繁体   English   中英

addToBackStack不会将片段添加到后台堆栈

[英]addToBackStack isn't adding the fragment to the back stack

我有一个包含两个片段的应用程序。 当我点击第一个列表中的项目时,应用程序将使用以下代码加载第二个片段:

FragmentTransaction transaction = getFragmentManager().beginTransaction()
transaction.replace(R.id.fragment_container, editFragment);
transaction.addToBackStack(null);
transaction.commit();

这样可行。 但是,当我点击“后退”按钮时,该应用程序似乎已关闭,但仍在运行,它只是将我转储回设备的主屏幕。 我以为可以使用popBackStack()返回,但是我发现,在上面显示的代码之后,后向堆栈条目计数仍然为0,因此addToBackStack似乎没有向后向堆栈添加任何内容。

我以前在其他应用程序上已经成功使用了此功能,尽管显然存在一些差异,但我看不出它与其他应用程序之间有什么区别。

如果有人可以给我提示,我将不胜感激。

谢谢,

罗斯

如果要通过调用add()addToBackStack()来添加第一个片段,则会得到您描述的行为。 请检查您是否没有两次调用addToBackStack()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM