• Frangment-学习总结


    Fragment常用三个类:

    Fragment:定义Fragment本身。
    FragmentManager:管理Activity中的Fragment
    FragmentTrasaction:对Fragment进行各种具体操作,而且其操作具有原子性。操作完成必须调用commit()方法,统一执行。
    

    Fragment的使用有两种方式:

    1.直接在Activity的layout里设置<Fragment>标签,这种属于静态使用,Fragment和其他控件无异;
    2.利用代码,在Activity里动态加载Fragment,这种方法可以降低Fragment和activity的耦合度,提高程序的灵活性,同时,Fragment还可以被多个Activity复用。

    Fragment动态加载的方法

    • 重写Fragment类,实现自己的Fragment。可以重写Fragment类的OnCreateView()方法来实现自己Fragment的布局。

    • 获得FragmentManager对象:FragmentManager fm = getFragmentManager();

    • 获得FragmentManagerTrasaction对象: FragmentManagerTrasaction ft =
      fm.beginTrasaction();

    FragmentManagerTrasaction有如下几个比较重要的操作:
    add():添加一个Fragment;
    remove():移除一个Fragment;(如果被移除的Fragment没有被加载进回退栈,则会被销毁)
    replace():先移除当前,然后用另一个替换。
    hide();隐藏Fragment,使被隐藏的Fragment不可见,但是不销毁。
    show():显示隐藏的Fragment .
    detach():把Fragment与Activity解除联系,但Fragment的实例还在,由FragmentManager维护。
    Attach():重建Fragment的view视图,附加到UI上并显示。

    以上操作可以随意组合,等操作语句写完,调用commit()函数提交,使这一系列操作得以连续执行,保证其原子性。
    

    Fragment回退栈:`有点类似于activity的Task栈,Activity会为Fragment维护一个回退栈,可以调用FragmentTrasaction.addToBackStack(String);来把Fragment加入回退栈,这样在点击系统的回退按钮时,Fragment可以依次实现回退的功能。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    Activex控件的IObjectSafety接口问题
    用delphi制作无界面的activex控件
    Delphi发布ActiveX控件 制作CAB包 数字签名相关
    Delphi创建ActiveX控件,实现安全接口及无界面代码
    Delphi 开发ActiveX控件(非ActiveForm)
    利用Delphi编写IE扩展
    解决IE9下交通银行网上银行无法输入密码的问题
    Delphi中COM自动化对象中使用事件
    Delphi不注册COM直接使用ActiveX控件并绑定事件
    C#中使用 SendMessage 向非顶端窗体发送组合键
  • 原文地址:https://www.cnblogs.com/song-ge/p/4779357.html
Copyright © 2020-2023  润新知