Android:资产目录和多语言

时间:2012-04-10 11:45:39

标签: android localization assets

早上好。进入我的android应用程序,我在资产目录中有一个文件更改日志。我有creato也是目录资产 - 它和我用意大利语放入文件更改日志但是当我启动应用程序时,如果设备语言设置为意大利语,它总是将文件显示到资源目录中。为什么?

2 个答案:

答案 0 :(得分:2)

这是预期的行为。 res/中的资源可以以这种方式进行本地化,但assets/目录不能。

由于它只是一个更改日志,我建议将其存储为res/values-LOCALE/中的本地化字符串资源。如果您真的想要资产的本地化,您可以通过获取当前的区域设置和加载来手动重新创建它,例如assets/changelog-en,与assets/changelog-it相对,但我认为这通常不是一个好主意,而且在您的情况下肯定没有必要。

答案 1 :(得分:-1)

试试这个:

  1. 将两个changelog文件放入资源文件夹:
  2. 路径例如:assets / en / changelog_file和assets / it / changelog_file

    1. 将此输入 /strings.xml:
    2. <string name="changelog_file">file:///android_asset/en/changelog_file</string>

      1. 输入 values-it /strings.xml:
      2. <string name="changelog_file">file:///android_asset/it/changelog_file</string>

        像这样你可以从代码中调用字符串: getResources()。getString(R.string.changelog_file),它将根据设备区域设置调用values-en或values-。