最近接触到了项目需要,多语言的转换。网上有很多资料,我整理一些,简单适合自己使用的操作。
第一步:打开Android studio
添加 Android Studio插件:AndroidLocalizationer
File----->Setting------Plugins,找到 Browse repositories,收搜AndroidLocalizationer。进行install安装,然后重启Android
添加,重启AS完成,是这样的。
找到自己存放字符串的信息文件,右键:
我这边选择了,英文,中文简体,中文繁体; ok就会自动生成相应的语言了
自动生成相应文件:
这样就完成了,简单的几部操作,就可以简单的生成了多语言的资源文件。
第二步:
资源文件生成了,我们要怎么样,才可以用到自己的项目去尼?,我其实是直接去引用了 。
这是我的布局,三个简单的按钮控件
关键部分代码
//定义一下
private Configuration config; private Resources resources; private DisplayMetrics dm;
//切换语言 private void init_lung() { resources = getResources();//获得res资源对象 config = resources.getConfiguration();//获得设置对象 dm = resources.getDisplayMetrics();//获得屏幕参数:主要是分辨率,像素等。 }
//对应上三个按钮
@Override public void onClick(View v) { switch (v.getId()) { case R.id.tv_zh_rCN: Toast.makeText(Wo_infoActivity.this, getResources().getString(R.string.a_w_i_o8), Toast.LENGTH_SHORT).show(); config.locale = Locale.SIMPLIFIED_CHINESE; //简体中文 init_Intent(); //切换后跳转到首页 break; case R.id.tv_zh_rTW: Toast.makeText(Wo_infoActivity.this, getResources().getString(R.string.a_w_i_o8), Toast.LENGTH_SHORT).show(); config.locale = Locale.TAIWAN; //繁体中文 init_Intent(); //切换后跳转到首页 break; case R.id.tv_en: Toast.makeText(Wo_infoActivity.this, getResources().getString(R.string.a_w_i_o8), Toast.LENGTH_SHORT).show(); config.locale = Locale.ENGLISH; //英文 init_Intent(); //切换后跳转到首页 break; } //更新app的语言资源 resources.updateConfiguration(config, dm); }
不用重启app就可以,就可以使用APP了。
虽然这个办法看是简单,没有多少的操作,也不用什么多余逻辑判断,作为新手第一次使用这种方法,也是可以参考一下的,毕竟是可以使用的。希望以后可以深入接触,可以学到更多更好切换app语言的方法。也是参考了很多网上的大神的资料,结合到自己的项目。由于本人技术经验知识不足,如果有什么不足的,请各位大神指点迷津,一起交流学习。