fragment的增删改

这篇博客介绍了Android中Fragment的添加、删除和替换方法。通过实例演示了如何使用add()、remove()和replace(),特别是在删除时,强调了通过findFragmentByTag()查找并删除Fragment的重要性。提供了一个简单的Fragment操作指南,并预告了后续将展示更完整的Fragment使用示例。

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

学习导航

第一节 fragment基础知识学习 :http://blog.youkuaiyun.com/bobo8945510/article/details/52788994

第二节 fragment的简单使用…. :http://blog.youkuaiyun.com/bobo8945510/article/details/52790296

第四节 fragment+viewpager:http://blog.youkuaiyun.com/bobo8945510/article/details/52821741

fragment的增删改

效果预览图:
这里写图片描述

上述效果为了让大家看清,所以我让添加的两个fragment重叠显示出来。那么这三个重要的方法怎么实现的呢?

1、上面两个是添加两个fragment,添加的时候用到的是add(布局id,对应的fragment,”TGA”)方法

2、删除的时候,用getFragmentManager的findFragmentByTag()方法来查找是否有对应”TGA”的fragment!

文章:http://blog.youkuaiyun.com/bobo8945510/article/details/52788994我有介绍

3、修改那就简单了,直接用repale()方法即可。


添加 add()方法

 button01 = (Button)findViewById(R.id.button01);
        button01.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                FragmentManager FM = getFragmentManager();
                FragmentTransaction MfragmentTransaction =FM.beginTransaction();
                Fragment01  f1 = new Fragment01();
                MfragmentTransaction.add(R.id.fragment_buju,f1,"f1");
                MfragmentTransaction.commit();
            }
        });

        button02 = (Button)findViewById(R.id.button02);
        button02.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                FragmentManager FMs = getFragmentManager();
                FragmentTransaction MfragmentTransactions = FMs.beginTransaction();
                Fragment02 f2 = new Fragment02();
                //用add(R.id.fragment_buju,f2,"f2")方法,添加f2对象时,给对象设置一个标签,用于删除等操作
                MfragmentTransactions.add(R.id.fragment_buju,f2,"f2");
                MfragmentTransactions.commit();
            }
        });

删除,根据“TGA”标签 remove()方法

button03= (Button)findViewById(R.id.button03);
        button03.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                FragmentManager FMs = getFragmentManager();
                //下面的“f2”就是添加fragment02时,给的一个标签
                Fragment fragment = FMs.findFragmentByTag("f2");
                FragmentTransaction MfragmentTransactions = FMs.beginTransaction();
                MfragmentTransactions.remove(fragment);
                MfragmentTransactions.commit();
            }
        });

修改 .replace()方法

  button04= (Button)findViewById(R.id.button04);
        button04.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                FragmentManager FMs = getFragmentManager();
                FragmentTransaction MfragmentTransactions = FMs.beginTransaction();
                Fragment02 f2 = new Fragment02();
                //replace(R.id.fragment_buju,f2),替换掉原本存在fragment
                MfragmentTransactions.replace(R.id.fragment_buju,f2);
                MfragmentTransactions.commit();
            }
        });

这一节就很简单,主要是看一下fragment的三个方法,如何使用,特别是删除的时候,根据什么来删除。下一节,就会写一个完善的fragment例子来使用这些方法

demo:http://download.youkuaiyun.com/detail/bobo8945510/9652779

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值