中文资源:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">你好,这是测试文字!</string>
<string name="app_name">LanguageTest</string>
<string name="btn_name">Change to English</string>
</resources>
英文资源:

<?xml version="1.0" encoding="utf-8"?>

<resources>
<string name="hello">Hello World, MainActivity!</string>
<string name="app_name">LanguageTest</string>
<string name="btn_name">变成中文</string>
</resources>
package com.hkp;

import java.util.Locale;

import android.app.Activity;
import android.content.Intent;
import android.content.res.Configuration;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
2011年09月
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends Activity {
/** Called when the activity is first created. */

public String [] langes = {"zh","en"};
public static int count = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

TextView tv = (TextView) findViewById(R.id.hello1);
String str = this.getResources().getString(R.string.hello);
tv.setText(str);
Button btn = (Button)findViewById(R.id.btn_change);
btn.setText(R.string.btn_name);
btn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String languageToLoad = langes[count++%2];
setLanguage(languageToLoad);
//刷新界面
Intent intent = new Intent();
默认分类
intent.setClass(MainActivity.this,MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
MainActivity.this.startActivity(intent);
}
});
}

/**
* Set the Language of Application
*
* @param lang
* the language to set
*/
private void setLanguage(String lang) {
String languageToLoad = lang;
Locale locale = new Locale(languageToLoad);
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config, null);
}
}

AndroidManifest.xml中:

<application android:icon="@drawable/icon" android:label="@string/app_name">

<activity android:name=".MainActivity"

android:label="@string/app_name"

android:configChanges="locale">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />

</intent-filter>

</activity>



</application>

<supports-screens

android:smallScreens="true"

android:normalScreens="true"

android:largeScreens="true"

android:anyDensity="true"/>


每一个Activity中都要加: android:configChanges="locale"。

加 <supports-screens>是为了解决如下问题:

更多相关文章

  1. Android(安卓)Gradle 插件中文指南
  2. Android导航栏资源总结,单纯防丢!
  3. Android(安卓)面试题及答案(英文)
  4. 【Android】多语言Values
  5. Android的Eclipse升级笔记
  6. android常用软件下载资源链接
  7. Android:R.string.xx 转为字符型
  8. Android开发 System.out.println(); 控制台输出方法
  9. Android(安卓)动画资源

随机推荐

  1. Android(安卓)非 SDK 接口常见问题
  2. Android(安卓)DragAndDrop API 拖拽效果
  3. Android布局优化之ViewStub、include、me
  4. 基于Unity3d 引擎的Android游戏优化
  5. “XXX停止运行”问题解决
  6. Android(安卓)Spinner控件
  7. Android事件分发机制源码畅游解析(Activi
  8. android vold初始化及sd卡挂载流程(转载)
  9. COCOS2D-X在LINUX下的IDE
  10. Android(安卓)入门第八讲01-WebView(WebVi