android开发中,简单的中英文切换实例

第一步:Project形式下,在res下创建语言values文件夹
        res>New Resource Directory>Locale
     导入你要选择的语言
第二步:在新建文件夹下values-en-rUS(英文)和values-zh-rCN下,各自建立一个xml文件strings.xml
例如:
 values-en-rUS
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="black">AAA</string>
    <string name="shouye">HOME</string>
</resources>
 


values-zh-rCN下
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="black">真他吗的操单</string>
    <string name="shouye">首页</string>
</resources>


第三步:清单文件中如下设置


<application
        。。。
        android:configChanges="locale"
       。。。
        <activity android:name=".login.BootPageActivity"
            android:configChanges="locale"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".login.LoginActivity"
            android:configChanges="locale"
            android:label="@string/app_name" />
        <activity android:name=".main.activity.Main2Activity"
            android:configChanges="locale"
            android:label="@string/app_name" />
        <activity android:name=".main.dataReport.salesrankings.SPActivity"
            android:configChanges="locale"
            android:label="@string/app_name" ></activity>
    </application>


第四步:在设置中英文转换的地方设置按钮


 @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.china:
             //获取当前语言
                sta = getResources().getConfiguration().locale.getLanguage();
                shiftLanguage(sta);
                break;
            case R.id.english:


                break;
        }


    }


public void shiftLanguage(String sta){
        Log.e("sta",sta);


        if(sta.equals("zh")){
        //转换为英文
            Resources resources = getContext().getResources();// 获得res资源对象
            Configuration config = resources.getConfiguration();// 获得设置对象
            DisplayMetrics dm = resources.getDisplayMetrics();// 获得屏幕参数:主要是分辨率,像素等。
            config.locale = Locale.US; // 英文
            resources.updateConfiguration(config, dm);
            getActivity().recreate();


        }else{
   //转换为中文
            Resources resources = getContext().getResources();// 获得res资源对象
            Configuration config = resources.getConfiguration();// 获得设置对象
            DisplayMetrics dm = resources.getDisplayMetrics();// 获得屏幕参数:主要是分辨率,像素等。
            config.locale = Locale.SIMPLIFIED_CHINESE; // 英文
            resources.updateConfiguration(config, dm);
            getActivity().recreate();
        }
    }


ps:这样一个很简单的中英文切换就完成了,是不是非常简单,哈哈哈,感兴趣的小伙伴可以动手操作一些啊





 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值