设置 switchStyle - 获取错误资源未找到 - 为什么?

13

我遇到了一个奇怪的问题: 我正在为一款应用程序创建样式,并设置了:

<item name="android:spinnerStyle">@style/CustomSpinnerAppearance</item>  
<item name="android:textViewStyle">@style/CustomTextViewAppearance</item>
<item name="android:buttonStyle">@style/CustomButton</item>  

现在我想要设置:

<item name="android:switchStyle">@style/CustomSwitch</item>

我遇到了这个错误。

没有找到与给定名称匹配的资源: 属性 'android:switchStyle'。

我已经在API级别14和15(ICS)的源代码中检查了attrs.xml,其中有:

<attr name="switchStyle" format="reference" />

尽管attr在attrs.xml中,为什么我不能为开关小部件设置自定义样式?

更重要的是:我需要做什么才能在整个应用程序中设置自定义样式的开关小部件?


你找到解决方案了吗?我也有同样的问题。我的themes.xml和styles.xml(values-v14)如下:<style name="AppTheme" parent="android:Theme.Holo.Light"> <item name="android:switchStyle">@style/SwitchAppTheme</item> </style> <style name="SwitchAppTheme" parent="android:Widget.Holo.Light.CompoundButton.Switch"> <item name="android:track">@drawable/switch_track_holo_light</item> <item name="android:thumb">@drawable/switch_inner_holo_light</item> </style> - Jerome VDL
2个回答

0
根据此错误,似乎无法继承。
然而,作为一种解决方法,如果你只是处理颜色,你可以通过在http://android-holo-colors.com/创建适当的9-patches等来覆盖现有样式。

0

1
switchStyle仅在Android 3.0及以上的Theme.Holo中定义。请确保您从Theme.Holo继承并使用正确的目标版本进行编译。 - CChi
目标是14(4.0)。在您的评论后,我尝试了15。没有变化。 - KarlKarlsom

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接