提供样式参数时是否可以引用枚举值?
例如,我们可以这样做:
<!-- 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>
visibility
只是一个例子 - 它可以是任何其他基于枚举的属性。
到目前为止,我发现的唯一解决方法是使用样式
<!-- layouts.xml -->
<TextView
android:style="@styles/theStyle" />
<!-- styles.xml -->
<style name="theStyle">
<item name="android:visibility">gone</item>
</style>
但这在某种程度上是有限制的,因为如果您需要使用带有 TextViews 的真实样式以及仅用于控制单个属性的特殊样式,它会变得越来越复杂。
如果有一种方法可以引用单个样式项,则另一种选择是。就像是:
<TextView
android:visibility="@styles/theStyle/visibility" />
但我认为上述情况更不可能发生。