关于android:configChanges小结

有段时间没更新博客了,做个音乐播放器遇到了坑,暂放来学习一个开源小项目👌。

1.android:configChanges位于AndroidManifest.xml中,用于捕获手机状态的改变。

2.Activity中添加android:configChanges属性,当所指定属性(Configuration Changes)发生改变时,通知程序调用
onConfigurationChanged()函数。

3.设置方法:字段用“|”符号隔开,如:“locale|navigation|orientation”。

4.“mcc“ 移动国家号码,由三位数字组成,每个国家都有自己独立的MCC,可以识别手机用户所属国家。

“mnc“ 移动网号,在一个国家或者地区中,用于区分手机用户的服务商。

“locale“ 所在地区发生变化。

“touchscreen“ 触摸屏已经改变。

“keyboard“ 键盘模式发生变化,如:用户接入外部键盘输入。

“keyboardHidden“ 用户打开手机硬件键盘。

“navigation“ 导航型发生了变化。

“orientation“ 设备旋转,横向显示和竖向显示模式切换。

“fontScale“ 全局字体大小缩放发生改变。

5.一般有以下几点:

(1)不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次。

(2)设置Activity的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次。

(3)设置Activity的android:configChanges="keyboardHidden|orientation|screenSize"时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged()方法。

posted @ 2016-01-08 17:30  Iamasoldier6  阅读(414)  评论(0编辑  收藏  举报