Fragment面试详解

一、Fragment为什么被称为第五大组件##

1.1 Fragment为什么被称为第五大组件
在安卓当中有四大组件分别是 Activity 、 Service 、 content provider 、broadcast receiver,
在实际项目开发中Fragment实际应用还是很突出的,使用频率也高。
有些说法是吧VIew认为第五大组件,但是view是没有自己的生命周期的,这是和Fragment不同之处,有了生命周期Fragment就会像Activity一样灵活应用。
在这里插入图片描述

同时Fragment并不像Activity完全独立,相对于Activity更节省内存,UI的切换效果更佳的舒适,可以动态灵活的加载Activity,它虽然说有自己的生命周期,但是它必须依附于Activity,同时还要加载到Activity当中。

1.2 Fragment加载到Activity的两种方式
静态加载:把Fragment作为一个XML标签加入到布局当中,

动态加载:
在这里插入图片描述
使用的是Fragmentmanager来管理所有要启动的Fragment,利用FragmentTransaction来添加替换相对于的Fragment,利用容器资源来作为标志位,设置Fragment索要显示activity当中的位置,最后提交commit来完成整个步骤。

1.3 FragmentPagerAdapter 与 FragmentStatePagerAdapter区别

在这里插入图片描述
FragmentPagerAdapter:适用于页面较少的情况在这里插入图片描述
也是调用的CurTransaction方法,只是把FragmentUI和ActivityUI 脱离开来,并没有回收内存。

FragmentStatePagerAdapter:适用于页面较多的情况

在这里插入图片描述
看最后一行,FragmentStatePagerAdapter是真正的释放了内存比FragmentPagerAdapter更节省内存。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值