【问题标题】:Android Resource NamespaceAndroid 资源命名空间
【发布时间】:2013-11-06 16:24:50
【问题描述】:

我最近开始编写一个 Android 应用程序,目前遇到一个问题。

我项目中的资源都在同一个命名空间中。我在 strings.xml 中使用的元素名称,例如,我不能在 my_strings.xml 中再次使用这些名称。

我原本希望通过@strings/myString访问strings.xml中的字符串以及通过@my_strings/myString访问my_strings.xml中的字符串。

有什么方法可以实现我想要的吗?

【问题讨论】:

    标签: java android xml layout namespaces


    【解决方案1】:

    是的,有办法!但这取决于您打算做出什么改变。 Android 有一个成熟的资源管理逻辑。因此,如果说values/strings 中的字符串是英语,但您也想提供德语字符串,只需创建另一个values-de 文件夹并将具有相同标识符的德语字符串放入其中。根据系统语言,Android 会选择正确的语言。

    要了解可能的情况,请查看here

    它告诉你所有可能的值后缀组合。如果您无法使用该机制归档您想要的内容,则只能为字符串的标识符添加前缀。 IE。 my_string_keystring_key

    最后一点:您输入值的文件名与系统完全无关。您可以在一个名为foobar.xml 的文件中混合字符串、颜色、尺寸、数组和样式,只要该文件位于value-XXX文件夹中!

    【讨论】:

    • 非常感谢您的详细解答。这有很大帮助。我现在了解资源管理的可能性和限制。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-12
    • 2011-07-06
    • 1970-01-01
    相关资源
    最近更新 更多