Android 应用(中英文)切换

本文介绍如何在Android应用中实现中英文切换,包括配置AndroidManifest.xml文件、创建不同语言的资源文件及核心代码实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

应用软件走向国际化,都少不了 中英文切换!最近项目需要一个中英文切换按钮!

这里简单说下原理:就是有多个Strings文件,对应的选择,然后刷新当前的Activity!


一:AndroidManifest.xml 文件

看来组件的配置缺少不了它,的确很是重要.....

在每个需要切换的语言Activity 下面添加:

android:configChanges="locale"

 <activity
            android:name="com.newentertainment.androidActivity"
            android:configChanges="locale"
            android:label="@string/app_name"
            android:theme="@style/concealTitle" >



二:创建一个英文的Strings.xml 文件,目录为: values-en   

     



三:核心代码,切换语言

	/**
	 * 刷新语言
	 */
	public void updateActivity(String sta) {

		// 本地语言设置
		Locale myLocale = new Locale(sta);
		Resources res = getResources();
		DisplayMetrics dm = res.getDisplayMetrics();
		Configuration conf = res.getConfiguration();
		conf.locale = myLocale;
		res.updateConfiguration(conf, dm);
		startActivity((new Intent(this, TabActivity.class)));
		this.finish();
	}


String sta=getResources().getConfiguration().locale.getCountry()  用于判断当前的语言,

Locale.getDefault().getLanguage()  //语言:取到的比如中文为zh,英文为en,日文为ko;
Locale.getDefault().toString() //具体的类别:比如繁体为zh_TW,简体为zh_CN。英文中有en_GB;日文有ko_KR。

把需要切换的Strings.xml对应的语言,传入到 updateActivity(String sta)  方法..... 



*... 项目开发中按钮为一个,点击后,需要更改图片,这就需要判断,简单贴一段判断:

// 切换成英文
		if (LanguageSettings.getInstance().getCurrentLanguage().equals("zh")) 											{
			updateActivity("en");
			LanguageSettings.getInstance().switchCurrentLanguage();
		} else {
			// 切换成中文
			updateActivity("zh");
			LanguageSettings.getInstance().switchCurrentLanguage();
		}

LanguageSettings.getInstance().getCurrentLanguage() 给变量动态赋值的标识列,用于判断!(采用单例模式)

其中: LanguageSettings.java 

然后在OnCreate() 加载启动的时候更改 按钮图片!


欢迎转载,注明出处!


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值