歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android將應用程序指定默認語言

Android將應用程序指定默認語言

日期:2017/3/1 10:23:26   编辑:Linux編程

Android的國際化做得還是不錯的,通過設置資源文件的名稱,如:values-zh-rCN,即可,系統會自動根據當前系統設置的語言進行選擇,默認是選擇values目錄下的資源文件的。那麼如果某個應用程序要指定默認語言,無論系統設置的語言是什麼,都要顯示默認語言,那這麼辦呢?很簡單,3步就Ok了。

第一步,寫一個類(FunctionApplication)繼承Application,在onCreate()方法中實現如下方法:

  1. @Override
  2. public void onCreate() {
  3. super.onCreate();
  4. String languageToLoad = "zh";
  5. Locale locale = new Locale(languageToLoad);
  6. Locale.setDefault(locale);
  7. Configuration config = getResources().getConfiguration();
  8. DisplayMetrics metrics = getResources().getDisplayMetrics();
  9. config.locale = Locale.SIMPLIFIED_CHINESE;
  10. getResources().updateConfiguration(config, metrics);
  11. }

第二步,將默認的AndroidManifest.xmlApplication設置為如下:

  1. <application
  2. android:name=".FunctionApplication"
  3. android:icon="@drawable/ic_launcher"
  4. android:label="@string/app_name"
  5. android:configChanges="locale" >

其中android:configChanges="locale"是關鍵。當然如果你不使整個應用程序都編程中文,那麼不用繼承Application,直接在繼承Activity的類中添加第一步的方法即可。當然別忘記在Activity標簽中添加android:configChanges="locale"。

第三步,添加相應權限:

<uses-permission android:name="android.permission.CHANGE_CONFIGURATION"/>

更多Android相關信息見Android 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=11

Copyright © Linux教程網 All Rights Reserved