我正在尝试在Android工作室的资源中使用变量设置XML属性而没有运气。
这样的工作:
<resources>
<string name="Key">@string/Key</string>
</resources>
但是这样的事情不会:
<resources>
<string name="Key" custom-attribute="@string/Key"/>
</resources>
如何在XML属性中使用变量?
这与Android xml reference within xml doesn't work不同。
第一个示例正常工作,我可以使用设置字段值的变量。第二个例子不起作用,我无法设置属性。
答案 0 :(得分:0)
这里我们可以在res /文件夹中定义资源。 您可以创建自己的文件并使用以下示例。 价值观不会起作用。
<resources>
<string name="button">Try Again</string>
<dimen name="margin">56dp</dimen>
<bool name="isCorrect">false</bool>
<color name="background">#fff</color>
<drawable name="icon">@drawable/ic_about_us</drawable>
<integer name="count">56</integer>
<string-array name="days">
<item>Monday</item>
<item>Sunday</item>
</string-array>
</resources>
使用R.id.nameOfResource
Here更多的是要探索它们。
希望这会有所帮助。
更新:我们还可以在build.gradle脚本中定义这样的资源。
android {
buildTypes.each {
it.resValue 'string', 'serverLink', "https://mylink.com"
}
}
答案 1 :(得分:0)
<resources>
<string name="Key">Some Value</string>
</resources>
应该给你相同的结果:
<resources>
<string name="Key" value="Some Value"/>
</resources>
因此我建议使用第一个例子,因为它可以正常工作。
答案 2 :(得分:0)
试试这个:
<string name="Key1">Some Text</string>
<string name="Key2">@string/Key1</string>
<强>更新强>
<string name="Key1">Some Text</string>
<string name="Key2">
<some-attribute>@string/Key1</some-attribute>
</string>