Fragment关闭指定页面

这篇博客介绍了在Android中关闭指定Fragment的方法。首先,需要通过SupportFragmentManager获取管理器,然后开始事务。接着,可以使用add或replace添加或替换Fragment。重要的是,Fragment不能像Activity那样直接finish,若要关闭,需设置tag并使用findFragmentByTag找到目标Fragment,开启事务进行remove操作,最后提交事务。掌握这些步骤,就能实现对Fragment的关闭操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

好记性不如烂笔头,没事记录下,下次需要可以直接就能看了。

使用fragment需要记住这4个步骤

1.获取FragmentManager管理器,有个v4包下的,一般都用这个 getSupportFragmentManager();

2.开启事务,fragmentManager.beginTransaction()

3.添加fragment 或者替换       add 和 replace

4.最后一步就是提交事务。 commit();



Fragment不像activity那样,想关闭的时候直接finish,     Fragment不能直接finish,如果想关闭指定的fragment那就需要设置一个tag标记。通过remove移除   代码:

 <span style="white-space:pre">			</span>//获取fragmentManager管理器
                        FragmentManager fragmentManager = getSupportFragmentManager();
                        //开启事务
                        FragmentTransaction beginTransaction = fragmentManager.beginTransaction();
                        //关闭哪个页面就设置个tag comm算是个标记 replace替换和添加add,当然还有显示和隐藏,这里先不说。
                        //FragmentTransaction comm = beginTransaction.replace(R.id.fragment_f, fragment1, "comm");
                        //这里面有三个参数, 1.一个fragmentLayout布局, 2.要显示的fragment, 3.就是设置tag(comm就是为当前的fragment设置tag)
                        FragmentTransaction comm = beginTransaction.add(R.id.fragment_f, fragment1, "comm");
                        //提交事务
                        comm.commit();
tag设置好之后,不管你现在 在哪个fragment页面,只要在想关闭comm这个标记的fragment,,,就在需要通过comm这个标记获取到被标记的fragment

需要5个步骤。 获取管理器 - findFragentByTag获取被标记的fragment - 开启事务 - 我要干吗?remove指定的fragment - commit提交。   

 <span style="white-space:pre">		</span>//获取管理器
                FragmentManager manager = getActivity().getSupportFragmentManager();
                //通过FragmentManager管理器获取被标记的fragment
                Fragment fragment1 = manager.findFragmentByTag("comm");
                if (fragment1 != null) {
                    //isMarket = true;//这行忽略
                    //开始事务 通过remove清除指定的fragment,并提交
                    manager.beginTransaction().remove(fragment1).commit();

只要知道如何关闭指定的fragment页面,其他的业务逻辑可以根据需求去实现。   其实就这么 几个步骤。


好记性不如烂笔头!




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值