Android 实现多语言

工具下载连接

 链接:https://pan.baidu.com/s/16OytG6p0-LGQTP-TibAIvA?pwd=jqh9 
提取码:jqh9 
Android 实现多语言_第1张图片

 1.将你需要的翻译的strings放到exe目录下

Android 实现多语言_第2张图片

2.双击执行xml转xls.exe  英文 日文 韩文(使用空格分割)回车,会在当前目录下生成一个strings.xls文件

Android 实现多语言_第3张图片

 Android 实现多语言_第4张图片

 3.打开strings.xls文件

Android 实现多语言_第5张图片

 4.打开讯飞在线文档翻译 讯飞智能翻译平台

 没有账号自己注册一个 

Android 实现多语言_第6张图片

5.将strings.xls文件上传

   选择将中文转为你需要的语言   重复操作生产你需要的语言 

Android 实现多语言_第7张图片

Android 实现多语言_第8张图片

 6.将翻译好的文件下载下来,并把翻译号的语言依次对应复制到相应的语言下  并保存

Android 实现多语言_第9张图片

 7.运行xls转xml   就会生成对应的文件复制到项目中即可

Android 实现多语言_第10张图片

 8.java代码实现  这个写在Base里面   SPUtils.getInstance().getAppString(Keyword.SYSTEM_LANGUAGE, "zh_cn");

这个就是一个sp写入工具在登录页的时候将选择的语言存起来用于每个页面读取对应的语言

  /**
     * 重写 getResource 方法,防止系统字体影响
     */
    @Override
    public Resources getResources() {//禁止app字体大小跟随系统字体大小调节
        Resources resources = super.getResources();
        String language = SPUtils.getInstance().getAppString(Keyword.SYSTEM_LANGUAGE, "zh_cn");
        Locale locale;
        switch (language) {
            case "zh_cn":
                locale = Locale.CHINA;
                break;
            case "zh_tc":
                locale = Locale.TRADITIONAL_CHINESE;
                break;
            case "en_us":
                locale = Locale.ENGLISH;
                break;
            case "ko_kr":
                locale = Locale.KOREAN;
                break;
            case "ja_jp":
                locale = Locale.JAPANESE;
                break;
            case "es_pa":
                locale = new Locale("es");
                break;
            case "po_rt":
                locale = new Locale("pt");
                break;
            case "vi_na":
                locale = new Locale("vi");
                break;
            default:
                locale = Locale.SIMPLIFIED_CHINESE;
                break;
        }
        Configuration configuration = new Configuration();
        configuration.setToDefaults();
        configuration.setLocale(locale);
        resources.updateConfiguration(configuration, resources.getDisplayMetrics());
        return resources;
    }

如果想给IOS转为Strings文件就需要用到EditPlus

Android 实现多语言_第11张图片

 Android 实现多语言_第12张图片

 Android 实现多语言_第13张图片

 Android 实现多语言_第14张图片

 然后将这个文件后缀改成strings发给ios就行了

你可能感兴趣的:(安卓新手,android,java,开发语言)