在Tab Widget - Android中使用onPause,onRestart

时间:2010-11-30 15:54:16

标签: android multitasking restart tabwidget onstart

我的ListView位于TabWidget内。当我在ListView上选择一个项目并转到孩子ListView时,TabWidget就会消失。这很好,除了它调用onPause方法,因此当我返回到父onRestart时会调用ListView

我有onRestart设置从服务器检索更新的数据,但我不希望每次用户返回到父ListView时都会发生这种情况。我只想在应用程序在后台运行时活动时调用onRestart。我已经尝试实现一个布尔变量来确定我是否应该执行onRestart内部的代码,但似乎没有办法解决这个问题的影响。

想法?

1 个答案:

答案 0 :(得分:1)

您可以使用startActivityForResult启动子活动,并在onActivityResult中设置一个不重新加载的标记(当用户从​​详细信息页面返回列表视图时应该调用该标记)。你有一个成员变量(比如说mReload),你在trueonCreate设置为onRestartfalse设置为onActivityResult 1}},如果onResume为真,则处理重新加载mReload(并将其设置回false,这样正常的恢复不会触发重新加载)。

替代方法:只需在行的点击侦听器中设置活动中的标记(mLeftPage)。重新启动时,如果mLeftPage为真,请不要重新加载列表并将mLeftPage设置为false。否则,重新加载。