我在ListView内有一个TabWidget。当我在ListView上选择一个项目并转到子ListView时,TabWidget消失了。很好,除了它调用onPause方法,并因此导致当我返回父级onRestart时调用ListView

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

有想法吗?

最佳答案

您可以使用startActivityForResult触发子活动,并在onActivityResult中设置一个标志以使其不重新加载(当用户从​​详细信息页面返回到列表视图时应调用该标志)。您将具有一个成员变量(假设为mReload),该变量在trueonCreate中设置为onRestart,在false中设置为onActivityResult,然后在以下情况下处理重新加载onResume mReload为true(并将其设置回false,这样正常的简历不会触发重新加载)。

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

关于android - 在Tab小部件中使用onPause,onRestart-Android,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4315654/

10-11 03:47