早上好。在我的 android 应用程序中,我在 assets 目录中有一个文件更改日志。我也创建了目录 assets-it,并且我已经将意大利语放入了文件更改日志,但是当我启动应用程序时,如果设备语言设置为意大利语,它也总是将文件显示到 assets 目录中。为什么 ?
问问题
2566 次
2 回答
2
这是预期的行为。res/
可以以这种方式本地化资源,但assets/
目录不能。
由于它只是一个变更日志,我建议将其作为本地化字符串资源存储在res/values-LOCALE/
. 如果您真的想要资产本地化,您可以通过获取当前语言环境并加载,例如assets/changelog-en
vs.来手动重新创建它assets/changelog-it
,但我认为这通常不是一个好主意,而且在您的情况下当然没有必要。
于 2012-06-14T02:17:57.897 回答
1
尝试这个:
- 将两个变更日志文件放入 assets 文件夹:
路径例如: assets/ en /changelog_file 和 assets/ it /changelog_file
- 将此输入您的值/strings.xml:
<string name="changelog_file">file:///android_asset/en/changelog_file</string>
- 输入你的值 - 它/strings.xml:
<string name="changelog_file">file:///android_asset/it/changelog_file</string>
像这样,您可以从代码中调用字符串:getResources().getString(R.string.changelog_file),它会根据设备区域设置调用 values-en 或 values-it。
于 2017-02-15T18:24:26.553 回答