这感觉像是一个初学者问题,但在Android中,当方向改变时,Activity会被销毁并重新创建,并再次调用onCreate()。内部状态可以通过savedInstanceState包保存。至此一切顺利。
但在我的应用程序中,有一个活动通常通过startActivityForResult()从另一个活动调用,传递一堆参数。在onCreate()中,目标活动执行getIntent()来检索传入的数据。问题是当该活动在屏幕上并且我翻转方向时,它会崩溃。它在onCreate()代码中崩溃,在那里调用getIntent()。我认为这是因为在这种情况下,它是被系统而不是其他活动调用,所以没有任何东西可供“获取”。
如何正确处理?怎样告诉我什么时候由于方向更改而调用我的onCreate(),以便我不尝试调用getIntent()?还是我想错了?预先感谢您。
但在我的应用程序中,有一个活动通常通过startActivityForResult()从另一个活动调用,传递一堆参数。在onCreate()中,目标活动执行getIntent()来检索传入的数据。问题是当该活动在屏幕上并且我翻转方向时,它会崩溃。它在onCreate()代码中崩溃,在那里调用getIntent()。我认为这是因为在这种情况下,它是被系统而不是其他活动调用,所以没有任何东西可供“获取”。
如何正确处理?怎样告诉我什么时候由于方向更改而调用我的onCreate(),以便我不尝试调用getIntent()?还是我想错了?预先感谢您。