关于在一个Activity中启动相机时,生命周期的问题

由于系统版本的缘故,在一个Activity调取系统相机拍照后,在level13以后加入了一个screenSize的属性,这个属性很重要,如果在android3.2以后的版本中没有添加"screenSize"的话依然会触发横竖屏activity销毁周期(也就是说不能屏蔽activity销毁,从而调用onConfigurationChanged方法,而在3.2之前只要设置orientation|keyboardHidden就可以)。由于智能机的迅速普及手机的系统大多数升级到4.0以上,这样会导致很多没有设置screenSize属性的程序activity又出现销毁情况,就会重新走一遍onCreate方法。

解决办法

在该Activity中的清单配置文件中加入 android:configChanges="orientation|keyboardHidden|screenSize" android:launchMode="singleTask"
,然后

 复写acitivity的onConfigurationChanged方法

   @Override
    public void onConfigurationChanged(Configuration newConfig) {

      其实这里可以什么都不要做
    super.onConfigurationChanged(newConfig);
    }

猜你喜欢

转载自blog.csdn.net/U__F_O/article/details/76032968