微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android-添加片段后,先前的片段仍然可见

首先,我使用replace方法将片段添加到堆栈中,然后按返回键时,堆栈中的片段将再次调用onCreateView,我在api演示中也发现了这一行为,所以我认为它不是错误,但我想达到类似活动行为的效果
按返回键,上一个活动将不会调用onCreate方法.

后来我发现fragmentManager.add()可以实现我的想法,但是出现另一个问题,当添加第二个片段时,前一个片段仍然可见.

有人可以帮我吗?

FragmentManager manager = getSupportFragmentManager();
        FragmentTransaction transaction2 = manager.beginTransaction();
        transaction2.add(R.id.fl, f2);
        transaction2.addToBackStack("Fragment2");
        transaction2.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
        transaction2.commit();

解决方法:

尝试使用“替换”而不是“添加

部分代码

fragmenttransaction.replace(R.id.realtabcontent,Fragment);
fragmenttransaction.commit();

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐