【问题标题】:Getting the available languages of the application dynamically动态获取应用程序的可用语言
【发布时间】:2011-01-18 20:01:23
【问题描述】:

是否可以动态查找应用程序支持的语言? 例如,我有以下语言的字符串:英语、法语、荷兰语和德语。 它们在相应的 res 目录中定义:值、values-frvalues-nlvalues-de。 我想让用户可以在它们之间进行选择,为此我想加载它们。但我不想对选择进行硬编码。我尝试使用:

getApplication().getResources().getAssets().getLocales()

但此方法返回手机支持的所有语言环境。

你还有什么想法吗?

【问题讨论】:

  • 我们可以看到“Android”标签 - 不需要放在标题中:)
  • 我想说,既然您无论如何都在“硬编码”这些语言,那么为什么不使用一个列出它们的string-array 呢?此外,不能保证(在一般情况下)values-XY 文件夹包含该语言的字符串。这也是一种迂回的说法,我不确定是否有列出资源目录的方法;)

标签: android string resources locale


【解决方案1】:

从 android UI 指南的角度来看,为用户提供不同于设备设置中更改语言环境的另一种方法是很奇怪的。如果您的应用程序调用另一个应用程序,哪个语言环境将使用该应用程序?

我也不确定,在构建过程之后浏览资源是一种方法,资源的处理、组织和打包方式是一个黑盒,任何应用程序都不应该尝试依赖给定的组织/格式,因为这在未来可能会改变。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-15
    • 2010-11-28
    • 1970-01-01
    • 2012-04-20
    • 1970-01-01
    相关资源
    最近更新 更多