2013-02-12 257 views
1

我正在构建一个旨在支持多语言的Android应用程序。坚果只是通常的西班牙语,法语,德语等,但也有一些少数语言没有Android Locale。Android多语言和少数语言支持语言不支持语言区域

我知道在资源文件夹中提供各种值文件夹的典型解决方案。例如values_fr或values_sp。但是,对于那些没有语言环境的少数民族语言来说,这无济于事。

所以我打算做的是将多个字符串XML文件放入值文件夹。例如:strings-welsh.xml,strings-cornish.xml,strings-gaelic.xml,strings-french.xml等

但是,我遇到了一个问题,因为我得到很多'资源项##已准备好'错误(其中##是字符串资源的名称)。

如何,然后我可以有那么编译器将停止抱怨,我可以自由地打电话:的getString(R.strings_welsh.app_name)getStrings(R.strings_french.app_name)

我将支持Android 4.0(ICS)及以上版本。

回答

1

你应该坚持标准的方式。您可以创建没有提供静态实例的语言环境。事实上,你可以提供任何你想要的;从locale docs

您可以创建语言和国家语言环境不使用constructors存在

现在我还没有尝试过,但我认为这意味着如果您将正确的字符串放在正确的文件夹中正确的文件夹中,并且您的设备支持这些语言或者您明确指定区域设置,则应该正确本地化字符串回来我不知道你需要何种语言,但至少你提到的那些,这里是two letter language codes

  • 威尔士:cy
  • 康沃尔:kw
  • 盖尔:gd