
例如,我们可以这样做:
<!-- layouts.xml --><TextVIEw androID:text="@string/str" /><!-- values.xml --><item type="string" name="str">hi</item>
这适用于字符串,整数,维度等,但我需要引用枚举值 – 例如visibility属性.我正在寻找类似的东西:
<!-- layouts.xml --><TextVIEw androID:visibility="@????/viz" /><!-- values.xml --><item type="?????" name="viz">gone</item>
可见性只是一个例子 – 它可以是任何其他基于枚举的属性.
到目前为止我找到的唯一解决方法是使用样式
<!-- layouts.xml --><TextVIEw androID: /><!-- styles.xml --><style name="theStyle"> <item name="androID:visibility">gone</item></style>
但这在某种程度上是限制性的,因为如果您需要使用TextVIEws的真实样式并且这种仅用于控制单个属性的特殊样式,它会变得越来越复杂.
另一种选择是,如果有一种方法可以引用单个样式项.就像是:
<TextVIEw androID:visibility="@styles/theStyle/visibility" />
但我认为上述内容的可能性更小.
解决方法 每个枚举实际上是一组命名整数.例如,visibility属性声明如下:
<attr name="visibility"> <enum name="visible" value="0" /> <enum name="invisible" value="1" /> <enum name="gone" value="2" /></attr>
因此,您可以通过其值直接引用枚举项.像这样的东西:
<!-- values.xml --><item name="viz" type="integer">1</item><!-- layouts.xml --><TextVIEw androID:visibility="@integer/viz"/>
我刚刚在手机上查看了它,效果很好.
总结以上是内存溢出为你收集整理的android – 引用属性枚举值全部内容,希望文章能够帮你解决android – 引用属性枚举值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)