5
我有一个应用程序需要在一个横向方向上启用滚动条,但不是纵向方向。我认为这样做是使显示滚动条是否被启用与否,如下列属性的最简单的方法:在Android中引用XML中的枚举样式属性
<ScrollView
a:layout_width="fill_parent"
a:layout_height="fill_parent"
a:scrollbars="?my_activity_scrollbars"
a:fadingEdge="none"
>
然后,我会定义为横向和纵向模式的属性不同的值。看起来很简单。
所以我再attrs.xml定义这个属性:
<resources>
<declare-styleable name="Theme">
<attr name="my_activity_scrollbars" format="enum" />
</declare-styleable>
</resources>
并将其添加到我的应用程序的styles.xml:
<style name="MyApp" parent="@android:style/Theme.Light">
<item name="add_credit_card_scrollbars">none</item>
</style>
然而,当我尝试编译我的应用程序,我得到以下错误:
styles.xml:8: error: Error: String types not allowed (at 'my_activity_scrollbars' with value 'none').
看来很清楚,它将“none”视为字符串而不是枚举值。我没有使用“none”,而是尝试了诸如“android:attr/scrollbars/none”,“?android:attr/none”等等,但这些都不起作用。
如何将“none”值指定为枚举值而不是字符串?
这是完全正确的,感谢Qberticus – emmby 2010-07-01 21:07:19
为了澄清,我改变了我的attrs.xml到' <申报,设置样式名称= “主题”> <枚举名=“无“值=” 0" ×00000000 /> <枚举名称= “垂直” 值= “0x00000200”/> 声明-设置样式> '(复制从$ ANDROID_SDK /平台/机器人枚举值 - */data/res/values/attrs.xml),一切都很好。 –
emmby
2010-07-01 21:09:33
@emmby非常感谢您的问题和以上评论。但我更喜欢十六进制值的整数值:-) - 再次感谢! – 2012-05-31 07:57:58