最近APP里做到了多语言的功能,需要简体中文,繁体中文,英语,三种语言。去查找了一下资料发现语言的切换就只是重载了一下resources;
首先在values里新建values-en(英文) values-zh-rCN(中文) values-zh-rTW(繁体)目录;
在对应目录下新建string文件,
将中文目录下的string内容拷贝到英语和繁体string文件中,再将语言翻译过来就OK了
private void setLanguage(int languageType){ Resources resources =getResources();//获得res资源对象 Configuration config = resources.getConfiguration();//获得设置对象 DisplayMetrics dm = resources.getDisplayMetrics();//获得屏幕参数:主要是分辨率,像素等。 switch (languageType) { case 0: config.locale = Locale.SIMPLIFIED_CHINESE; //系统默认语言 break; case 1: config.locale = Locale.SIMPLIFIED_CHINESE; //简体中文 break; case 2: config.locale = Locale.TAIWAN; //繁体中文 break; case 3: config.locale = Locale.ENGLISH; //英文 break; default: config.locale = Locale.SIMPLIFIED_CHINESE; break; } resources.updateConfiguration(config, dm); }AndroidSDK里有个Locale文件里定义了多种语言,直接引用就可以了。(Locale.SIMPLIFIED_CHINESE;)