我的ListView
位于TabWidget
内。当我在ListView
上选择一个项目并转到孩子ListView
时,TabWidget
就会消失。这很好,除了它调用onPause
方法,因此当我返回到父onRestart
时会调用ListView
。
我有onRestart
设置从服务器检索更新的数据,但我不希望每次用户返回到父ListView
时都会发生这种情况。我只想在应用程序在后台运行时活动时调用onRestart
。我已经尝试实现一个布尔变量来确定我是否应该执行onRestart
内部的代码,但似乎没有办法解决这个问题的影响。
想法?
答案 0 :(得分:1)
您可以使用startActivityForResult
启动子活动,并在onActivityResult
中设置一个不重新加载的标记(当用户从详细信息页面返回列表视图时应该调用该标记)。你有一个成员变量(比如说mReload
),你在true
和onCreate
设置为onRestart
,false
设置为onActivityResult
1}},如果onResume
为真,则处理重新加载mReload
(并将其设置回false
,这样正常的恢复不会触发重新加载)。
替代方法:只需在行的点击侦听器中设置活动中的标记(mLeftPage
)。重新启动时,如果mLeftPage
为真,请不要重新加载列表并将mLeftPage
设置为false。否则,重新加载。