0
我的应用程序使用片段在纵向模式下以纵向模式显示ListView或并排显示ListView和“细节”视图。我在ActionBar中也有一个菜单项,它启动了一个AsyncTask。问题是,如果用户在AsyncTask正在运行时将其显示从纵向旋转到横向(反之亦然),则AsyncTask会被终止。从停止固定的AsyncTask,我添加了configChanges归因于AndroidManifest:使用AsyncTask切换片段
<activity android:name="ListingFragment" android:configChanges="keyboardHidden|orientation" />
然而,添加则该属性防止碎片从自动切换到横向/纵向视图。有什么办法可以让碎片自动切换他们的视图而不杀死AsyncTask?
我认为onRetainCustomNonConfigurationInstance()已被弃用,文档说使用setRetainInstance() – 2012-04-10 00:05:36
这是出于不同的目的。如果调用'setRetainInstance(true)'这意味着Fragment实例不会被该活动破坏,它将被保留(传递),新活动将获得这个片段而不是创建一个新片段。 即使'onRetain ...'被弃用,我不知道他们提供了另一种通过活动destroy-create cycles保留对象实例的方法。 – dmon 2012-04-10 00:08:03
相关提示然后我会使用onRetainCustomNonConfigurationInstance()。感谢您的回应。 – 2012-04-10 00:13:55