当前位置: 移动技术网 > IT编程>移动开发>Android > Android轻松实现多语言的方法示例

Android轻松实现多语言的方法示例

2019年07月24日  | 移动技术网IT编程  | 我要评论

毛峰茶产于,2017高考分数线是多少,新密胡进发

本文介绍了android轻松实现多语言的方法示例,分享给大家,具体如下:

1.创建多语言包


2.首先在oncreate方法中调用此方法查看上一次保存的是什么语言

 public void setlanguage() {
    //根据读取到存放在sp里面的数据 进行设置
    configuration configuration = getresources().getconfiguration();

    sharedpreferences sharedpreferences = getsharedpreferences("key", mode_private);
    int language = sharedpreferences.getint("language", 0);

    switch (language) {
      case 0:
        configuration.setlocale(locale.chinese);
        break;
      case 1:
        configuration.setlocale(locale.english);
        break;
    }
    getresources().updateconfiguration(configuration, getresources().getdisplaymetrics());
  }

3.点击某个按钮弹出选择框选择语言包

  btn_qiehuan.setonclicklistener(new view.onclicklistener() {
      @override
      public void onclick(view v) {
        string[] strings = {"简体中文", "english"};
        //首次进入判断是否是中文语言
        int selected = getsharedpreferences("language", context.mode_private).getint("language", -1);
        if (selected == -1) {
          string defaultlanguage = locale.getdefault().tostring();
          if (defaultlanguage.equals(locale.chinese.tostring()) || defaultlanguage.equals(locale.simplified_chinese.tostring())
              || defaultlanguage.equals(locale.traditional_chinese.tostring())) {
            selected = 0;
          } else {
            selected = 1;
          }
        }
        new alertdialog.builder(mainactivity.this)
            .setsinglechoiceitems(strings, selected,
                new dialoginterface.onclicklistener() {
                  //点击单选框某一项以后
                  public void onclick(dialoginterface dialoginterface, int i) {
                    sharedpreferences preferences = getsharedpreferences("language", context.mode_private);
                    sharedpreferences.editor editor = preferences.edit();
                    editor.putint("language", i);
                    editor.commit();
                    dialoginterface.dismiss();
                    //重启activity
                    finish();
                    intent intent = new intent(mainactivity.this, mainactivity.class);
                    intent.setflags(intent.flag_activity_new_task | intent.flag_activity_clear_task);
                    startactivity(intent);
                  }
                })
            .create()
            .show();
      }
    });

效果演示~~~

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网