我们知道,在activity中配置此配置可以避免所配置的activity在所配置的属性发生改变的时候,不重建。常用的一些用法如下:
一、常用属性的说明: 、
1、orientation: 屏幕方向发生了改变,一般指的是旋转手机;
2、keyBoardHidder:可访问性发生了改变,如用户调出了键盘;
3、fontScale:系统的字体缩放比例发生了改变,选择了别的字号;
4、screenSize:屏幕尺寸发生了改变,比如旋转屏幕,屏幕的宽高会发生改变(api13之后加入);
5、layoutDirection:布局方向发生改变(api17之后加入)。当改变语言设置后,该属性也会成newConfig中的一个mask位。所以ActivityManagerService(实际在ActivityStack)在决定是否重启Activity的时候总是判断为重启;
6、locale:设备的本地位置发生变化,一般是切换系统语言;
二、在屏幕发生旋转的时候不重建activity:
在api13之前只需要配置orientation即可,但是13以后,需要加上screenSize;
android:configChanges="orientation|screenSize" (API13之后)
android:configChanges="orientation"(API14之前)
三、切换语言时不重建activity:
在API17之前只需要配置locale即可,API17之后需要加上layoutDirection属性 android:configChanges="layoutDirection|locale"(高于API17)
android:configChanges="locale"(低于API17)
四、切换字体大小不重建activity:
android:configChanges="fontScale"
android:configChanged的用法
最新推荐文章于 2025-06-05 09:29:51 发布