在 Tab Widget 中使用 onPause、onRestart - Android
-
29-09-2019 - |
题
我有一个 ListView
那是在一个里面 TabWidget
. 。当我选择一个项目时 ListView
然后去找孩子 ListView
, , 这 TabWidget
消失。这很好,除了它调用 onPause
方法,从而导致 onRestart
当我回到父母身边时被调用 ListView
.
我有 onRestart
设置从服务器检索更新的数据,但我不希望每次用户返回父级时都发生这种情况 ListView
. 。我只想 onRestart
当应用程序在后台运行时被调用。我尝试实现一个布尔变量来确定是否应该执行里面的代码 onRestart
, ,但似乎没有办法避免这种影响。
有想法吗?
解决方案
你可以用以下方式关闭你的孩子活动 startActivityForResult
并设置一个标志 onActivityResult
不重新加载(当用户从详细信息页面返回到列表视图时应该调用它)。你会有一个成员变量(比方说 mReload
)你设置为 true
在 onCreate
和 onRestart
, , 并 false
在 onActivityResult
, ,然后处理重新加载 onResume
如果 mReload
是 true (并将其设置回 false
所以正常的恢复不会触发重新加载)。
选择:只需设置一个标志(mLeftPage
) 在行的点击监听器的活动中。重新启动时,如果 mLeftPage
是 true,不要重新加载列表并设置 mLeftPage
回到假。否则,重新加载。
不隶属于 StackOverflow