我有片段 A,其中包括 SwipeRefresh 和 RecycleView。
当用户单击 RecycleView 中的某个项目时,我替换一个新的片段,即 B:
mAdapter.setOnItemClickListener(new MyAdapter.OnItemClickListener() {
@Override
public void onItemClick(View view, int position) {
Item tem = mItems.get(position);
// selected item
Log.i(TAG, item.getTitle() + " clicked. Replacing fragment.");
// We start the fragment transaction here. It is just an ordinary fragment transaction.
getActivity().getSupportFragmentManager()
.beginTransaction()
.replace(R.id.content_fragment,
FragmentB.newInstance(item,
(int) view.getX(), (int) view.getY(),
view.getWidth(), view.getHeight())
)
// We push the fragment transaction to back stack. User can go back to the
// previous fragment by pressing back button.
.addToBackStack("detail")
.commit();
}
});
有一个问题 :
当我开始使用 SwipeRefresh 刷新并且它仍在运行时,我单击一个项目(如上面的代码所示),片段 B 将被替换under
屏幕中的片段 A。
我可以在片段 A 的 RecyclerView 下看到片段 B!
我无法再在 recyclerView 中滚动onStop()
在片段 A 中被调用并且onCreateView
在片段 B 中被调用。
可能是什么原因?你有什么解决方法吗?
附录:崩溃也可以在谷歌示例中重现:
https://github.com/googlesamples/android-FragmentTransition/ https://github.com/googlesamples/android-FragmentTransition/
这是一个错误。谷歌可能很快就会修复它。
问题 78062 https://code.google.com/p/android/issues/detail?id=78062
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)