如何在关闭对话框时保留视图内存



在我的android应用程序活动中,我为LinearLayout创建了一个全局变量。然后我创建一个对话框,并将LinearLayout添加到此对话框中。然后,当我关闭对话框时,我相信会发生LinearLayout变量被删除,因为它的值变为null或其他什么。

我想要的是,当对话框被关闭时,LinearLayout数据不会被删除。这是因为,如果我想再次打开对话框窗口,我将再次添加LinearLayout视图,这样做是为了让它记住LinearLayouts内部视图的状态,例如单选组和复选框。

这样做可能吗?

谢谢。

如果您在某个变量中保护对LinearLayout的引用,并且自己不将其设置为null,则在解除对话框后它不会为null。

但是,我认为不能将视图附加到父对象两次。

保持状态的最佳方法是:

  1. 由于配置更改和其他事情会暂停您的应用程序,请将状态存储在其他位置,并在使用onSaveInstanceState()onCreate()重新启动活动时将其持久化。有一个Bundle传递给这两个方法,您可以在其中保存状态
  2. 在创建新布局时恢复您的状态
  3. 可选:保存对对话框的引用

最新更新