2013-07-24 35 views
7

錯誤我已經在我的簡體中國本土化res文件夾中創建一個values-zh_CN目錄。 Eclipse不接受該文件夾名稱,它將其標記爲錯誤,即目錄本身。中國區域值,使zh_CN的基於Eclipse

的問題肯定是與目錄名,如果我改變了目錄名values-nl例如錯誤脫落。

Eclipse中接受的唯一名字是values-zh-rCN它編譯罰款,但(EN改爲加載默認值)的實際語言環境未加載。

回答

8

如果你命名的目錄,例如values-zh只有當中國選擇在系統語言設置也將被載入。你應該知道這一點。

價值zh-rCN是正確的,一切都應該正常工作。閱讀我上面的通知。

+2

values-zh工作正常,但我需要區分簡體中文和繁體中文。我嘗試手動加載區域設置,使用Locale和getBaseContext()。getResources()。updateConfiguration()。但是,如果值處於值-zh-cn,那麼它們不會被加載。由於某些原因,他們被忽略。任何想法爲什麼? – aviran

+0

你讀過那篇文章:http://stackoverflow.com/questions/2264874/changing-locale-within-the-app-itself? – TN888

+0

@aviran使用zh_CN如果您想要加載zh_rCN的內容(如果您手動設置區域設置)。 – steven0529

1

正確的語言環境是zh-rCNzh-rTW,那麼無論您使用的Android軟件是不是正確設置區域設置值。

查看設置 - >語言&輸入以仔細檢查語言是否爲中文,如果在市場上未能找到名爲MoreLocales2的應用程序,則可以避開某些防止區域設置的三星軟件改變工作。

+0

它甚至沒有在仿真器上工作... – aviran

+3

這是不正確的。您應該將中文(繁體)翻譯放入值-zh中,以便zh-TW以外的語言環境仍可以獲得繁體中文翻譯。如果您的用戶來自澳門(zh_MO)或香港(zh_HK),並且您未包含values-zh目錄,他們將看到英文文本而不是繁體中文。將簡體中文翻譯放在values-zh-rCN中,因爲簡體中文在較少的語言環境中使用。 –

+0

該用戶詢問了我提供的簡體和繁體。在OP中沒有提到使用'values-zh'或類似的東西,所以感謝-1。 –

9

使用下面的代碼的工作對我來說爲繁體和簡體中國。

if(selectedLanguage.equals("zh_CN")) 
    locale = Locale.SIMPLIFIED_CHINESE; 
else if(selectedLanguage.equals("zh_TW")) 
    locale = Locale.TRADITIONAL_CHINESE; 
else 
    locale = new Locale(selectedLanguage); 

Locale.setDefault(locale); 
Configuration config = new Configuration(); 
config.locale = locale; 
baseContext.getResources().updateConfiguration(config, baseContext.getResources().getDisplayMetrics()); 
+0

++++ @ Sunil Parmar謝謝!! –