2012-10-21 144 views
2

我正在开发一个使用英语和古吉拉特语言的Android应用程序。用户将选择他想在应用程序中使用哪种语言。 这里的问题在于Android默认不支持古吉拉特语,印地语或其他Devnagari语言。 假设我通过在assets文件夹中设置字体来开发这个功能,但是对于我来说真正的问题是如果我想在将来添加更多这样的语言,我不想更改我的应用程序的代码,那么我该如何添加更改语言而不更改代码?多种语言的Android应用程序

+0

创建资源包并通过语言环境访问它们。这对于Java的I18N来说是常用的方法。 – duffymo

+0

从2.3版本Android支持印地文。你可以使用文件夹的值 - 嗨在res和可以把你的字符串文件作为@Tobias Moe Thorstensen – MGDroid

回答

1

创建几个res文件夹,您将命名为例如res-fr,并在此文件夹内存储一个包含所有字符串的string.xml文件。通过使用

getResources().getString(R.string.mystring); 

记住始终使用相同的名称,每串导入他们在您的应用程序,但改变每个元素的内容:

英语string.xml

<string name="welcome">Welcome to my application</string> 

and French string.xml

<string name="welcome">Bienvenue sur ma demande</string> 
+0

这很好,但如何处理其他languages.Android默认不支持印地文,古吉拉特语,泰米尔语或其他印度语言。当语言本身不存在于设备中时,我的手机将选择string.xml文件。 –

+0

从2.3支持android支持hindi,将值放在值-h文件夹中 – MGDroid

0

因为你需要适当的字体.ttf文件。 U必须将其复制到您的项目资产文件夹中,而不是通过使用字体,您可以修复您自己的字体...