如何刷新活动,就像第一次加载它一样?

时间:2011-10-31 06:26:22

标签: android

我试图找出当用户登陆我的活动屏幕时,它是如何“重新加载”的,就好像它是第一次加载一样。

我不希望我的用户点击后退箭头并使用旧信息返回我的活动。

就像现在一样,当用户“返回”我的页面时,数据库列表没有被重新填充,他们输入EditText字段的信息仍然存在。

我希望每次用户访问时,该页面都是第一次出现在页面上。

5 个答案:

答案 0 :(得分:1)

您是否曾尝试在当前活动中使用recreate()?在填充新值后尝试使用它。

答案 1 :(得分:0)

或者您可以将onCreate()中的所有内容放在onResume上。有点难看,但它有效。

答案 2 :(得分:0)

我必须不同意Kartik,据我所知,android:noHistory='true'将从应用程序堆栈中删除活动。因此,当用户回击时,用户将根本无法看到该活动。

关于不保留其价值的活动,我不建议您这样做,因为用户希望在返回时保留所有值,除非您有一些特定的要求,即试图满足。

所以我猜你的问题的解决方案是,正如其他人建议你在onResume()中对视图进行初始化。但这样做可能还不够,因为EditText之类的视图默认会缓存值。因此,您可能需要手动清除onResume()上的内容。如果有任何问题,我们会继续寻找任何“完美”的解决方案。

答案 3 :(得分:0)

我解决了与你类似的问题,我解决了午餐模式。 我认为最好是看一下this在单个实例中设置午餐模式然后 在你onCreate和onResume上,你可以编写代码来刷新你想要的方式。

答案 4 :(得分:0)

从onCreate()方法

复制所需的代码到onResume()