我已經爲應用程序創建了4種語言。我可以更改Lauaguage,但是,如果關閉應用程序,然後再次啓動它,應用程序將首先使用默認的string.xml啓動。應該首先使用默認語言啓動應用程序嗎?
如何讓應用程序從最後選擇的語言開始?
我應該在mainActivity中通過OnCreate調用方法嗎?
@SuppressWarnings("deprecation")
public void setLocale(String lang) {
Locale myLocale = new Locale(lang);
DisplayMetrics dm = getResources().getDisplayMetrics();
Configuration conf = getResources().getConfiguration();
conf.locale = myLocale;
getResources().updateConfiguration(conf, dm);
Intent refresh = new Intent(this, Languages.class);
startActivity(refresh);
/* "en" = English
"hi" =Hindi
"fr" =French
"it" =Italian
"de" =German
"es" =Spanish
"ja" =Japanese
"ko" =Korean
"nl" =Dutch
"pt" =Portuguese
"ru" =Russian
"zh" =Chinese
"ar" = arabic
*/
}
用戶如何更改默認語言?
是的,我這樣做,我保存所選的語言符號像恩,德國,法國,...和標誌作爲共享偏好字符串的太像路徑。 Bave解決這個問題,我必須在每次重新啓動應用程序後選擇語言。我發現這裏有一些simulare,但沒有工作:[鏈接](https://stackoverflow.com/questions/12908289/how-to-change-language-of-app-when-user-selects-language) – Biblio
你可能不得不利用諸如'onCreate','onResume'等的活動生命週期函數來加載文件。你在哪一點檢查選定的語言? – Mohale
@Biblio'...和標誌的圖像路徑作爲字符串在共享偏好... ** **錯誤**。你也可以有本地化的可繪製文件夾。不需要做一些天真的事情,比如將路徑存儲到正確的標誌圖像。 –