简易记账开发笔记之Fragment(后续)

        在前文中讲到在Activity中如何动态添加Fragment是使用FragmentManger和FragmentTransction这两个类的,那么什么是FragmentManger和Fragment Transction?

    ​    ​FragmentManager,顾名思义,Fragment的管理者,通过上文,我们知道通过FragmentManager可以来如何找到fragment的实例(findViewById和fidViewByTag),它的职责是在程序运行时动态管理Fragment,包括添加、移除、显示、隐藏或者在不同Fragment之间的切换导航。为了支持到Android 3.0,我们通过调用Activity的getSupportFragmentManager方法代替getFragmentManager方法来获取FragmentManager。

    ​    ​FragmentTransction,顾名思义,Fragment事务,什么是事务?引用百度到的内容:(。。。不让我复制。。。)事务是一组原子操作单元,从数据库角度说,就是一组SQL指令,要么全部执行成功,要么全部撤销不执行,若因为某个原因其中一条指令执行有错误,则撤销先前执行过的所有指令(在一个事务中)。

    ​    ​FragmentManger通过FragmentTransction来对Fragment进行相关操作。让我们看一下FragmentManager的相关方法。


    ​    ​通过FragmentManager的beginTransction方法,就可以获取一个FragmentTransction实例,来进行fragment的管理。通过调用FragmentTransction类的add、replace、remove、hide、show、addToBackStack等方法可以对fragment进行添加、替代、移除、隐藏、显示、添加在后退栈,其他方法可以看android api。看看例子,加深印象。


那么,来讲讲add、replace、remove、hide方法的区别:

    ​    ​add方法就是将一个fragment实例添加到容器中,remove就是从容器移除fragment实例,而replace方法则有先调用remove方法再重新调用add方法的顺序。hide方法是将一个fragment隐藏起来,在适当的时候在通过show方法显示出来,例如我们的底部导航栏在不更新数据要保持现有的数据情况下就可以使用hide和show方法,我简易记账就是使用这种方法。每次进行相关操作之后,都要调用commit方法将事务提交。


再给一张FragmentTransction的文档照片:


本文是对前文的补充,个人能力有限,英语一般,不足之处多多指教。

长按关注哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值