0

我正在显示一个对话框片段,例如progressDialog.show(getSupportFragmentManager());

当我的线程完成时,对话框被关闭。这在屏幕旋转后不起作用,因为我的“progressDialog”变量没有设置。

手动使用progressDialog.show(getSupportFragmentManager(), "progressDialog");和保留片段会起作用,但不推荐使用此功能...

那么正确的方法是什么?

4

1 回答 1

0

您必须保存片段活动的实例状态。旋转设备后,您可以Bundle片段活动中获得。

在这个包中,你可以存储任何你想要的东西,从原始类型到字符串数组SerializableParcelable对象,所以你可以根据需要配置保存的状态。

如果您progressDialog只需要可见状态,则可以像isProgressBarShownig在实例状态包中一样存储一些标志。

于 2013-07-27T20:28:55.717 回答