我已经声明了一个带有枚举值的可样式属性,如下所示:
<declare-styleable name="TileLayout">
<attr name="rotation" format="integer">
<enum name="top" value="0"/>
<enum name="left" value="1"/>
<enum name="right" value="2"/>
<enum name="bottom" value="3"/>
</attr>
</declare-styleable>
现在我想在我的代码中引用那些,最好是在一个switch
语句中。
除了将枚举中的值硬编码到我的代码中之外,我找不到任何方法来做到这一点(首先破坏了枚举的一半目的)。
有谁知道如何做到这一点?
编辑
根据@CommonsWare 的回答,尝试了这个:
资源.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer name="rotation_top">0</integer>
</resources>
attrs.xml:
<resources>
<declare-styleable name="TileLayout">
<attr name="rotation" format="integer">
<enum name="top" value="@integer/rotation_top"/>
<enum name="left" value="1"/>
<enum name="right" value="2"/>
<enum name="bottom" value="3"/>
</attr>
</declare-styleable>
</resources>
这导致top
不再是rotation
.