2013-04-03 54 views
2

我有一個TextView,它根據情況向用戶顯示一條消息。我得到的字符串取決於具體情況,這很好。以編程方式更改字符串的語言

我的問題是,我如何管理不同的語言?

我環顧四周,大多數建議是根據語言環境使用單獨的string.xml。但是,由於這只是一個以編程方式更改其內容的字符串資源,它並不真正起作用。

有沒有辦法有像

if(language is blabla) 
    change the text to "this" 

或類似的東西。

+0

漢語語言不同,當用戶改變他們的語言設置嗎?或者,您是否正在根據應用程序中的某些用戶選擇來更改該字符串的語言? – 2013-05-06 19:30:24

回答

0

我通過使用SQLite數據庫管理這個。我有5種語言的5個不同的表格。在我的listAdapter中,我從查詢中導入了表名: SELECT * FROM dbname.sqlite_master WHERE type ='table' 接下來,在一個名爲OutputStrings的單例類中,我導入所有用於UI的字符串。 從每個活動視圖都從OutputStrings中讀取字符串。

最好的問候,

0

您可以輕鬆地改變你的地方到您想要的地方:

Locale locale = new Locale("en"); 
    Locale.setDefault(locale); 
    Configuration mConfig = new Configuration(); 
    mConfig.locale = locale; 
    getBaseContext().getResources().updateConfiguration(mConfig, 
      getBaseContext().getResources().getDisplayMetrics());