最近项目要做到中英文切换的功能,调查了很久现在讲解及记录一下
首先android 支持多语言的操作,先要在你的res的values中新建一套你的语言系统的strings.xml
右键点击res
选中android resource file 并选择locale
这时点击右面的那个箭头
这时可以选择你要的那个语言
以上是我们的准备工作,下面直接代码
public class LocaleUtils {
//中文
public static final Locale LOCALE_CHINESE = Locale.CHINESE;
/**
* 英文
*/
public static final Locale LOCALE_ENGLISH = Locale.ENGLISH;
/**
* 保存SharedPreferences的文件名
*/
private static final String LOCALE_FILE = "LOCALE_FILE";
/**
* 保存Locale的key
*/
private static final String LOCALE_KEY = "LOCALE_KEY";
/**
* 获取用户设置的Locale
*
* @param pContext Context
* @return Locale
*/
public static Locale getUserLocale(Context pContext) {
SharedPreferences _SpLocale = pContext.getSharedPreferences(LOCALE_FILE, Context.MODE_PRIVATE);
String _LocaleJson = _SpLocale.getString(LOCALE_KEY, "");
return jsonToLocale(_LocaleJson);
}