美文网首页
Fragment总结

Fragment总结

作者: qianxL | 来源:发表于2016-08-18 14:01 被阅读0次

    Fragment

    • Fragment结构

      • 活动布局中的FragmentLayout(布局)容器
      • Fragment的子布局。
      • Fragment类。
    • 一般添加和替换碎片都是在FragmentLayout(布局)容器中。

    • 静态加载碎片时呢,一定要用V4包里的,避免出现Fragment加载错误。

    • 如果在同一次事务添加了多个Fragment呢,显示的次序同添加次序一致。add()添加碎片后就默认显示,如一次向同一容器添加多个碎片了,就得hide()不显示的Fragment。

    • 一个事务对象呢,只支持一次提交。

    • 调用FragmentManager.add()添加Fragment时,可通过参数传入此次行为的日志名。调用findFragmentByTag(),传入日志名就能获取添加的碎片。

    • hide()方法仅是隐藏视图,detach()方法是销毁视图,最后通过show()方法都能显示出来。

    • 可调用FragmentManager对象的findFragmentById(),findFragmentByTag(),获取到activity的返回栈中存在的Fragment。

    • Fragment 分别在app包和V4包都有,但两者兼容的最低版本不同,app包里的最低兼容 android 3.o版本,V4包里的最低兼容 android 1.6版。一般使用V4包里的就好,相应的创建FragmentManager对象时,也就只能调用V4包里的方法创建了,getSupportFragmentManager()。

      • 事务就是同一时刻呢执行一组动作。
      • 向activity中添加Fragment,都要取得一个FragmentTransaction的实例,其中就可以对Fragment进行add,remove,replace。在调用commit()前,执行了addToBackStack(),事务就会添加到返回栈中。当用户按下返回键时呢,事务的所以动作都会反向执行(事务回溯)。
      • 但如没有执行addToBackStack()呢,被删除的Frgament就会被销毁,而不是进入停止状态。当按下返回键时呢此Fragment不会被恢复。就是回到返回栈保存事务之前的状态。
    • 以下此图是Fragment的完整生命周期。

    碎片生命周期碎片生命周期

    相关文章

      网友评论

          本文标题:Fragment总结

          本文链接:https://www.haomeiwen.com/subject/dzyvsttx.html