【发布时间】:2015-08-05 13:29:51
【问题描述】:
我已经在一个应用程序中工作了几个月。上传到 playstore 的版本运行良好。最近,做了一些改进,整个应用程序开始以一种非常奇怪的方式运行。
如果您在片段之间切换,一段时间后它不会正确膨胀片段,始终放置第一个片段的内容。因此,如果您切换片段,操作栏会发生变化,但内容始终相同(并且您无法与之交互)。
这是错误https://streamable.com/9exa的快速视频
我快疯了,因为没有任何日志或跟踪。
我正在使用通常的方式切换片段,最有趣的部分是一开始一切正常:
Fragment fragment = getSelectedFragment(index); // returns the desired fragment
FragmentManager fragmentManager = getFragmentManager();
//Pop backstack
for(int i = 0; i < fragmentManager.getBackStackEntryCount(); ++i) {
fragmentManager.popBackStack();
}
fragmentManager.beginTransaction()
.replace(R.id.container, fragment)
.addToBackStack(null)
.commit();
有人知道这里会发生什么吗?谢谢!
编辑:我也尝试清除后台堆栈以防万一,但它不会改变任何东西
已解决:正如我在回答中解释的那样,我发现这是与 SwipeRefreshLayout 相关的问题。有关此问题的更多信息,请访问When switch fragment with SwipeRefreshLayout during refreshing, fragment freezes but actually still work
【问题讨论】:
标签: android android-fragments fragmentmanager