亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android app應(yīng)用多語言切換功能實現(xiàn)

 更新時間:2016年08月04日 11:21:29   作者:android_it  
這篇文章主要為大家詳細介紹了Android app應(yīng)用多語言切換功能實現(xiàn)代碼,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Android app應(yīng)用實現(xiàn)多語言切換功能,供大家參考,具體內(nèi)容如下

1.添加多語言文件
在不同的 value 文件夾下(例如 value 、value-en、values-zh-rTW 文件夾)添加不同語言的 string.xml 文件,我們的項目添加了英文、簡體中文、繁體中文三種語言,如下圖所示:

Project模式:


Android模式:


其中英文需要翻譯,繁體如果沒有專門翻譯的話,可以找個簡繁轉(zhuǎn)換網(wǎng)站,直接將簡體中文轉(zhuǎn)成繁體中文,推薦一個網(wǎng)站:
http://www.vifo.com.cn/fanti/

下面我只講解簡體中文和英文的做法;

2.現(xiàn)在我們可以在activity啟動里面(onCreate()或者onResume())獲取系統(tǒng)的語言:

  Locale locale = Locale.getDefault();
  String language = locale.getLanguage();

language就是我們從系統(tǒng)拿到的語言,這里如果是中文,拿到的是“zh”,如果是英文是“cn”;

3.拿到了系統(tǒng)語言,那么我們就要通過系統(tǒng)語言的判斷改變我們app對應(yīng)的系統(tǒng)語言:

 protected void showLanguage(String language) {
    //設(shè)置應(yīng)用語言類型
    Resources resources = getResources();
    Configuration config = resources.getConfiguration();
    DisplayMetrics dm = resources.getDisplayMetrics();
    if (language.equals("zh")) {
      config.locale = Locale.SIMPLIFIED_CHINESE;
    } else {
      config.locale = Locale.ENGLISH;
    }
    resources.updateConfiguration(config, dm);
    //保存設(shè)置語言的類型(這個里面我先保存一下,下面會講到他的用處)
    PreferenceUtil.commitString("language", language);
  }

這樣子,如果你的手機開始的時候系統(tǒng)是中文,那么你的app就是中文,如果開始的時候系統(tǒng)是英文,那么你的app就是英文,這個只是適用開始的時候語言就已經(jīng)設(shè)定好了,但是如果你現(xiàn)在的app用的是中文,app沒有退出的情況下,直接去把系統(tǒng)設(shè)置成英文,那么你返回到你的app的時候并不會是英文,依然是中文,必須在程序退出之后,再進來的時候才會成為英文,這樣子的體驗一點都不好,那么我們怎么樣才能做到你改系統(tǒng)語言,我的app就跟著去改變呢,所謂的動態(tài)改變。那么我們可以這樣子做。

 @Override
  protected void onResume() {
    super.onResume();
    String LAN = PreferenceUtil.getString("language","");
    Locale locale = Locale.getDefault();
    String language = locale.getLanguage();
    Log.i("語言————————",language);
    if(!language.equals("")){
      if(!LAN.equals(language)){
        freshView();//重新啟動MainActivity

      }
    }
    showLanguage(language);
  }


   private void freshView(){
    Intent intent = new Intent(this, MainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
    startActivity(intent);

  }

首先PreferenceUtil這個是我自己寫的工具類,就是SharedPreferences存儲,在onResume()里面,重要的就是做個判斷,拿到的language是不是和之前保存系統(tǒng)的language一樣,如果不一樣,重新啟動MainActivity,這樣子就做到了重新獲取系統(tǒng)language。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Android Service中方法使用詳細介紹

    Android Service中方法使用詳細介紹

    這篇文章主要介紹了android service中方法使用詳細介紹的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-09-09
  • Android GridView簡單實例

    Android GridView簡單實例

    這篇文章主要為大家詳細介紹了Android GridView簡單實例,簡單實現(xiàn)九宮格效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • Android刮刮樂效果-proterDuffXfermode的示例代碼

    Android刮刮樂效果-proterDuffXfermode的示例代碼

    這篇文章主要介紹了Android刮刮樂效果-proterDuffXfermode,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • MTK Android平臺開發(fā)流程

    MTK Android平臺開發(fā)流程

    這篇文章主要介紹了MTK在Android平臺開發(fā)的流程,一共分析了44個步驟,需要的朋友學(xué)習(xí)下吧。
    2017-12-12
  • Android  webview和js互相調(diào)用實現(xiàn)方法

    Android webview和js互相調(diào)用實現(xiàn)方法

    這篇文章主要介紹了 Android webview和js互相調(diào)用實現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • 詳解Android app自動更新總結(jié)(已適配9.0)

    詳解Android app自動更新總結(jié)(已適配9.0)

    這篇文章主要介紹了詳解Android app自動更新總結(jié)(已適配9.0),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Android 實現(xiàn)旋轉(zhuǎn)木馬的音樂效果

    Android 實現(xiàn)旋轉(zhuǎn)木馬的音樂效果

    大家一定在百度音樂上在線聽過歌,有沒有注意到那個旋轉(zhuǎn)的唱片,本篇文章主要介紹在Android上如何實現(xiàn)這樣的功能,有需要的小伙伴可以參考下
    2016-07-07
  • Android自定義TextView實現(xiàn)文字圖片居中顯示的方法

    Android自定義TextView實現(xiàn)文字圖片居中顯示的方法

    下面小編就為大家分享一篇Android自定義TextView實現(xiàn)文字圖片居中顯示的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • androidx下的fragment的lazy懶加載問題詳解

    androidx下的fragment的lazy懶加載問題詳解

    這篇文章主要介紹了androidx下的fragment的lazy懶加載問題詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 實例分析Android中HandlerThread線程用法

    實例分析Android中HandlerThread線程用法

    本篇文章主要給大家介紹了Android HandlerThread使用介紹以及源碼解析,有需要的朋友參考學(xué)習(xí)下吧。
    2017-12-12

最新評論