【问题标题】:Android: How to re-use strings in multi-language resourcesAndroid:如何在多语言资源中重用字符串
【发布时间】:2010-12-02 10:48:23
【问题描述】:

自从我的第一个 android 项目以来,这个问题一直困扰着我。考虑默认使用“en”的多语言字符串资源:

res/values/strings.xml     <--- The default language 'en'
res/values-de/strings.xml  <--- de
res/values-fr/strings.xml  <--- fr
res/values-it/strings.xml  <--- it

使用该文件夹结构,此应用的 Android 电子市场条目显示“仅默认、德语、法语和意大利语”的语言支持。是的,该列表中缺少英语。

是否可以将“values”文件夹中的完整默认字符串资源“包含”到附加的“values-en”文件夹中。是的,我不想在那个新文件夹中维护该文件,因为所有内容都已在默认字符串资源中声明。

非常感谢。

哈拉尔

【问题讨论】:

    标签: android resources


    【解决方案1】:

    我不太明白问题出在哪里。只需创建一个values-en 目录并将 XML 从您的默认目录复制并粘贴到新目录。

    如果您只是想要一种指向该默认值目录的符号链接,以便当您更改默认目录中的某些内容时,链接目录中的文件代表相同的更改,那么您只需转到 File -&gt; New -&gt; Folder 选择应创建新文件夹(在您的情况下为 res 目录),然后点击 Advanced &gt;&gt; 并选择 Link to alternate location (Linked Folder) 然后浏览到您要链接到的目录(在您的情况下为 values 目录)和您的完成。

    现在,每当您更改 values 目录中的某些内容时,所有更改都会应用到新的链接目录。

    【讨论】:

    • 是的!没有选择 strings.xml 的副本(需要重复维护)。但是我忽略了文件夹和文件创建对话框中的高级按钮。我手动创建了文件夹 values-en 并创建了一个指向默认文件夹的链接文件 strings.xml。很好的解决方案。我知道,这些字符串现在在 apk 中出现了两次,但我希望客户看到重要的语言翻译。谷歌应该添加一个框,可以在其中定义默认语言是什么。感谢您的帮助。
    • 不幸的是,这对我不起作用 - 链接已创建但安装后,我仍然只看到默认语言(默认为英语,而不是我有常规捷克语(cs)和链接一个是斯洛伐克语(sk)——我看到的是英语,而不是捷克语(我应该)。有帮助吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多