【发布时间】:2011-04-03 15:19:43
【问题描述】:
在我正在编写的应用程序中,有一部分允许您更改窗帘设置。问题是,在重新创建活动之前,此设置不会生效。有没有办法告诉应用程序使用 onResume() 方法重新启动(希望允许它保存 onSaveInstanceState() 中的所有内容)?
【问题讨论】:
-
你能不能先启动另一个实例然后在原始实例上调用完成?
-
@Blundell - 诀窍是在启动新实例之前调用
finish()。 -
基本上,我想做的就是能够从 onRestart() 方法中调用 onCreate() 方法。我该怎么做才能让 onSaveInstanceState() 保存所有内容。因为有了这个,一切都会被重置,因为它是一个全新的活动?
-
@Ephraim - 也许您可以提供有关您要完成的工作的更多详细信息。你所说的不符合我对Activity lifecycle 的理解。创建、启动和恢复活动是完全独立的事情,您似乎想以某种方式将它们混合在一起。
-
@Ted Hopp 该程序的工作方式是,您输入一个单词,然后在屏幕上为您提供与该单词对应的窗帘编号。如果您要更改设置,则与该单词对应的数字会更改。问题是,该设置在重新启动活动之前不会生效(如果您要更改方向,它将允许设置生效,但不会这样做)我想要的是只要程序启动其 onRestart() 方法,就可以执行此操作。 (我希望 EditText 中的文本保持不变,就像在 onSaveInstanceState() 中一样)。
标签: android android-activity restart onresume