android:configChanges
16lz
2022-04-02
android:configChanges
2012-03-13 16:32 252人阅读 评论(0) 收藏 举报VALUE | DESCRIPTION |
"mcc" | 国际移动用户识别码所属国家代号是改变了----- sim被侦测到了,去更新mcc mcc是移动用户所属国家代号 |
"mnc" | 国际移动用户识别码的移动网号码是改变了------ sim被侦测到了,去更新mnc MNC是移动网号码,最多由两位数字组成,用于识别移动用户所归属的移动通信网 |
"locale" | 地址改变了-----用户选择了一个新的语言会显示出来 |
"touchscreen" | 触摸屏是改变了------通常是不会发生的 |
"keyboard" | 键盘发生了改变----例如用户用了外部的键盘 |
"keyboardHidden" | 键盘的可用性发生了改变 |
"navigation" | 导航发生了变化-----通常也不会发生 |
"screenLayout" | 屏幕的显示发生了变化------不同的显示被激活 |
"fontScale" | 字体比例发生了变化----选择了不同的全局字体 |
"uiMode" | 用户的模式发生了变化 |
"orientation" | 屏幕方向改变了 |
"screenSize" | 屏幕大小改变了 |
"smallestScreenSize" | 屏幕的物理大小改变了,如:连接到一个外部的屏幕上 |
android:configChanges
在android中每次屏幕的切换动会重启Activity,所以应该在Activity销毁前保存当前活动的状态,在Activity再次Create的时候载入配置。在activity加上android:configChanges="keyboardHidden|orientation"属性,就不会重启activity.而只是调用onConfigurationChanged(Configuration newConfig).这样就可以在这个方法里调整显示方式.
[java] view plain copy print ?- publicvoidonConfigurationChanged(ConfigurationnewConfig){
- try{
- super.onConfigurationChanged(newConfig);
- if(this.getResources().getConfiguration().orientation==Configuration.ORIENTATION_LANDSCAPE){
- Log.v("Himi","onConfigurationChanged_ORIENTATION_LANDSCAPE");
- }elseif(this.getResources().getConfiguration().orientation==Configuration.ORIENTATION_PORTRAIT){
- Log.v("Himi","onConfigurationChanged_ORIENTATION_PORTRAIT");
- }
- }catch(Exceptionex){
- }
- }
public void onConfigurationChanged(Configuration newConfig) { try { super.onConfigurationChanged(newConfig); if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) { Log.v("Himi", "onConfigurationChanged_ORIENTATION_LANDSCAPE"); } else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) { Log.v("Himi", "onConfigurationChanged_ORIENTATION_PORTRAIT"); } } catch (Exception ex) { } }
- <?xmlversion="1.0"encoding="utf-8"?>
- <manifestxmlns:android="http://schemas.android.com/apk/res/android"
- package="com.himi"android:versionCode="1"android:versionName="1.0">
- <applicationandroid:icon="@drawable/icon"android:label="@string/app_name">
- <activityandroid:name=".MainActivity"android:label="@string/app_name"
- android:configChanges="keyboardHidden|orientation">
- <intent-filter>
- <actionandroid:name="android.intent.action.MAIN"/>
- <categoryandroid:name="android.intent.category.LAUNCHER"/>
- </intent-filter>
- </activity>
- </application>
- <uses-sdkandroid:minSdkVersion="4"/>
- </manifest>
http://blog.csdn.net/jkkjklmn/article/details/7349517
更多相关文章
- android设置图片变化的四种效果代码
- Android自定义view四手势缩放移动的ImageView
- android屏幕监听,手机是否处于锁屏状态,在锁屏之上弹出Toast.makeT
- android 音量获取和设置总结
- Android(安卓)GLSurfaceView在屏幕旋转后绘图区域异常的解决办法
- Android中获取屏幕长宽的方法
- android 图片点击一下就放大到全屏,再点一下就回到原界面
- Android(安卓)密度转换多分辨率
- Android(安卓)code cut 1 --圆形在屏幕撞墙弹回