![](/img/trans.png)
[英]How to set default language with AlertDialog/Checkbox for Android app?
[英]How To Set Default Language for Android app?
我用兩種語言創建了一個應用程序。 第二個(英語),當用戶的默認系統語言是英語時使用。 如果不是,則使用第一個。
我想將第二種語言(即英語)設置為默認語言,這意味着當用戶打開我的應用程序並且他的系統語言不是第一種語言,也不是英語時,英語將顯示為默認語言。
我試過:
Locale locale = new Locale("en_US");
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
context.getApplicationContext.getResources().updateConfiguration(config, null);
但是每次都出現“上下文無法解決”錯誤..這段代碼是對的還是..?
好的,
為了讓一切都清楚,我意識到res/values
是一個默認目錄,而其他目錄只是“在語言的情況下”。 所以我所要做的就是將英語切換到 /res/values 而另一種語言切換到res/values-es
您應該使用 res 文件夾定義您支持的所有語言,即res/values
、 res/values-en
、 res/values-fr
。 系統會處理其他一切,您不需要任何代碼。
如果您正在參加一項活動,您可以:
this.getApplicationContext().getResources().updateConfiguration(config, null);
...修復你的錯誤。 否則,您需要傳入上下文。
確保在getApplicationContext()
的末尾添加括號。 您沒有在代碼中這樣做。
我遇到過同樣的情況,我的應用程序最初是用葡萄牙語 (BR) 創建的,所以我們走向全球,我將 En-Us 作為第二語言,所以我的解決方案是創建一種新語言(單擊翻譯編輯器 + 巴西)。 ..所以我有我的默認語言(葡萄牙語)第二(英語)第三(葡萄牙語)
然后我將資源/值替換為默認的英文字符串設置...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.