【问题标题】:Use a reference to a String resource as a name attribute for other resources使用对 String 资源的引用作为其他资源的名称属性
【发布时间】:2014-01-23 09:29:57
【问题描述】:

是否可以在 name 属性引用字符串资源的 XML 中创建资源?

让我举个例子:

在我的 strings.xml 我有:

<string name="some_string">I am a string</string>

我可以(以某种方式)将字符串资源用作另一个资源的名称吗?如:

<integer name="@string/some_string">1</integer>


澄清一些事情:

  • 我知道您可以将资源的引用到引用中:

<string name="another_string">@string/some_string</string>

  • 我已经尝试过不加引号:

<integer name=@string/some_string>1</integer>

【问题讨论】:

    标签: android xml string android-resources


    【解决方案1】:

    我认为这不会奏效。

    这也是一个非常糟糕的主意,因为您的 String 的值可能会因翻译成其他语言而改变。在此之后,您的整数的名称(ID)将通过在不同国家/地区使用您的应用程序而改变。这可能会通过更改电话默认语言来破坏您的代码。

    【讨论】:

    • 现在你提到它,这是真的。即使在制作单语言应用程序时,它也会在某些时候破坏。谢谢你叫醒我,我会在 8 分钟内接受它作为答案。
    【解决方案2】:

    正如More Resource Types 的文档中所述:

    名称:字符串。字符串的名称。此名称将用作资源 ID。

    所以你不能这样做。

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 2011-03-18
      • 1970-01-01
      • 2019-05-30
      • 1970-01-01
      • 1970-01-01
      • 2017-05-31
      • 2020-01-07
      • 2010-09-07
      • 2021-06-03
      相关资源
      最近更新 更多