2012-10-21 225 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必須將其複製到您的項目資產文件夾中,而不是通過使用字體,您可以修復您自己的字體...