今天总结一下我对Fragment的理解(碎片的入栈与出栈,碎片的嵌套)

1.碎片的嵌套!

getFragmentManager到的是activity对所包含fragment的Manager,而如果是fragment嵌套fragment,那么就需要利用getChildFragmentManager()了。

getFragmentManager()是所在fragment 父容器的碎片管理,

getChildFragmentManager()是在fragment 里面子容器的碎片管理。

 Fragment里面嵌套Fragment 的话:一定要用getChildFragmentManager();

包括 碎片中嵌套viewpager 也适用

2.碎片的出入栈!
加入碎片并让其入栈。。附代码吧。。。。。。
transaction=manager.beginTransaction();
transaction.addToBackStack("");
transaction.replace(R.id.yizhu_rly,new Hand_Fragment());
transaction.commit();
事务的处理 入栈
而且可以给事务设置动画  这样切换碎片就有动画啦!!!!
fragmentTransaction.setCustomAnimations(R.anim.push_left_in, R.anim.push_left_out, R.anim.back_left_in, R.anim.back_right_out);

碎片的出栈(呃 简单说就是销毁吧  个人理解 ,)
getFragmentManager().popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);//直接回到栈顶
getFragmentManager().popBackStack();//若栈中有很多碎片只会向上弹一个

由于本人只用过这两个  所以  欢迎大家补充!说的不对之处请指出,大家一起学习

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值