android:应用程序崩溃,如果方向在子活动中发生变化

时间:2012-09-20 03:46:33

标签: android android-activity orientation

我的主要活动处理后更改为纵向模式。但是,如果我通过startActivityForResult()启动一个非常简单的活动并在完成之前切换到纵向模式,我的主要活动会崩溃,因为它的一些变量设置为空。

看起来我的服务连接没有重新创建。我尝试在doUnbindService(); doBindService();内手动调用onActivityResult(),但仍未调用onServiceConnected()

在这里处理活动生命周期的正确方法是什么?

编辑:我在日志文件中看到onServiceConnected()确实被调用了 - 但在 {{1}之后被称为 }。

2 个答案:

答案 0 :(得分:2)

对于你的第二个活动添加这个

  if your android:targetSdkVersion="12" or less
     android:configChanges="orientation|keyboardHidden">

      if your  android:targetSdkVersion="13" or more
  android:configChanges="orientation|keyboardHidden|screenSize">
manifest.xml中的

答案 1 :(得分:0)

问题是我指的是在再次调用onCreate()之前不存在的对象。我需要在本地排队我的答案并等待重新创建这些对象以避免崩溃。