使用变量

时间:2017-08-30 14:54:14

标签: android

我正在尝试在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不同。

第一个示例正常工作,我可以使用设置字段值的变量。第二个例子不起作用,我无法设置属性。

3 个答案:

答案 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>