第一步: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:这样一个很简单的中英文切换就完成了,是不是非常简单,哈哈哈,感兴趣的小伙伴可以动手操作一些啊
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:这样一个很简单的中英文切换就完成了,是不是非常简单,哈哈哈,感兴趣的小伙伴可以动手操作一些啊