1、刚进a页面(竖屏
a-onCreat —— a-onStart —— a-onResume
  2、a页面竖屏变成横屏(a-竖 b-横) a-onPause —— a-onSaveInstanceState —— a-onStop —— a-onDestory —— b-onCreat —— b-onStart —— a-onRestoreInstanceState —— b-onResume   3、a页面由横屏变为竖屏(a-横 b-竖)
a-onPause —— a-onSaveInstanceState —— a-onStop —— a-onDestory —— b-onCreat —— b-onStart —— a-onRestoreInstanceState —— b-onResume


 上面是正常情况下页面横竖屏的生命周期,在切换横竖屏的时候页面会先销毁然后重新创建,但如果不想页面销毁再重建要怎样做呢,我们可以在AndroidManifest.xml中配置activity的 configChanges属性(亲测),这个时候切换横竖屏的时候就不需要先销毁再重建了
1、配置activity的configChanges属性                    a: Andorid 3.2以前的SDK可以使用如下配置                     android:configChanges="orientation|keyboardHidden"
         b:而Adnroid 3.2以后的SDK必须添加一个screenSize属性,具体如下
               android:configChanges="keyboardHidden|orientation|screenSize"
               或者
               android:configChanges="orientation|screenSize"

2、重写 onConfigurationChanged方法

       
  1. @Override
  2. public void onConfigurationChanged(Configuration newConfig) {
  3. super.onConfigurationChanged(newConfig);
  4. Log.i(TAG, "onConfigurationChanged called.");
  5. switch (newConfig.orientation) {
  6. case Configuration.ORIENTATION_PORTRAIT:
  7. Log.i(TAG, "onConfigurationChanged called.ORIENTATION_PORTRAIT ");
  8. break;
  9. case Configuration.ORIENTATION_LANDSCAPE:
  10. Log.i(TAG, "onConfigurationChanged called.ORIENTATION_LANDSCAPE " );
  11. break;
  12. }
  13. }

3、由横屏切换成竖屏 日志输出
onConfigurationChanged called.
onConfigurationChanged called.ORIENTATION_PORTRAIT




更多相关文章

  1. 安全新手入坑——HTML标签
  2. Nginx系列教程(四)| 一文带你读懂Nginx的动静分离
  3. android中使用OpenGL ES
  4. Android紧急号码列表修改
  5. Android(安卓)属性动画 源码解析 深入了解其内部实现
  6. Android(安卓)实现页面跳转
  7. android 网络连接处理分析
  8. RecycleView 嵌套 RecycleView 导致自动滚动
  9. android系统属性读写操作SystemProperties

随机推荐

  1. Using Android Debug Bridge (ADB) via T
  2. android滑动删除的一个开源项目SwipeDelM
  3. Android(安卓)Studio 安装配置详细步骤,以
  4. ScrollView去掉半月阴影
  5. 如何制作Android(安卓)ROM
  6. DialogFragment设置自定义动画
  7. Android Recyclerview设置条目属性动画
  8. Android(安卓)AIDL(Android(安卓)Interfa
  9. Android P Wifi Enable 之后扫描流程
  10. Android Studio中引入layoutlibjar的正确