如何在Android中仅列出已配置的语言



在我的Android应用程序的资源中已经建立了一些特定的语言(如res/values es/strings.xml(。我希望用户能够从这些可能的语言中进行选择,以便在需要时设置他们的首选语言。

我想获得语言列表的方式是通过自动方式(以防以后添加新语言(。

getResources().getAssets().getLocales()本身是不可接受的,因为它列出了设备支持的所有可能的语言。相反,我只想获得res/中列出的那些。

我该怎么做?API中有内置函数吗?我应该使用硬编码字符串数组吗?

最低安卓API:21,当前安卓API:30,<strong]语言:>Java

谢谢!

。。。这列出了设备支持的所有可能的语言。相反,我只想获得那些在res/中列出的。

对不起,这不是什么事。另外,事情并没有那么简单:

  • 您正在使用库,其中一些库可能具有翻译资源,其语言可能是您自己的源代码中的语言的超集

  • 应用程序捆绑包只会将您自己语言的一个子集发送给用户

与应用程序模块的res/目录树中的内容相比,用户拥有的内容之间的关系非常复杂。

API中是否有内置函数,我是否应该使用硬编码字符串数组?

是的,您应该计划维护自己的语言名册。您可能需要在未来为此进行额外的工程工作(例如,应用程序捆绑包(。

相关内容

  • 没有找到相关文章

最新更新