zoukankan      html  css  js  c++  java
  • Android 3.0开始引入fragments(碎片、片段)类

    Fragment要点

    1. Fragment作为Activity界面的一部分组成出现。

    2. 可以在一个Activity中同时出现多个Fragment,并且,一个Fragment亦可在多个Activity中使用。

    3. 在Activity运行过程中,可以添加、移除或者替换Fragment(add()、remove()、replace())。

    4. Fragment可以响应自己的输入事件,并且有自己的生命周期,当然,它们的生命周期直接被其所属的宿主activity的生命周期影响。

      Android在3.0开始引入了fragments的概念,提供了更加动态和灵活的UI设计,而不需要自己来管理ViewHierarchy(视图层次)的复杂变化。通过将activity的布局分散到fragment中,可以在运行时修改activity的外观,并在由activity管理的Back Stack中保存这些变化。

      从以上例图,可以知道:fragment在开发的应用程序中应当是一个模块化和可重用的组件。即fragment定义了自己的布局,以及通过使用它自己生命周期的回调方法定义其自己的行为,由此可以将fragment包含到多个activity中

    创建Fragment

      要创建一个fragment,必须创建一个Fragment的子类(或者继承自一个已存在的Fragment的子类)。当然,Fragment类的代码很类似Activity,它包含了和activity相似的回调方法。通常一个fragment要至少实现如下生命周期的回调方法:

    onCreate()

    当创建fragment时,系统调用该方法。在实现代码中,应当初始化想要在fragment中保持的必要组件,当fragment被暂停或者停止后可以恢复。

    onCreateView()

    fragment第一次绘制它自己的用户界面时,系统会调用此方法。为了绘制fragment的UI,此方法必须返回一个View,这个view就是你fragment布局的根view。如果fragment不提供UI,可以返回null。

    onPause()

    用户将要离开fragment时,系统调用这个方法作为第一个指示(然而它不总是意味着fragment将被销毁)。在当前用户会话结束之前,通常应当在这里提交任何应该持久化的变化(因为用户有可能不会返回)。

    除了继承基类 Fragment , 还有一些子类你可能会继承:

    • DialogFragment
      显示一个浮动的对话框.  
      用这个类来创建一个对话框,是使用在Activity类的对话框工具方法之外的一个好的选择,因为你可以将一个fragment对话框合并到activity管理的fragment back stack中,允许用户返回到一个之前曾被摒弃的fragment。

    • ListFragment
      显示一个由一个adapter(例如 SimpleCursorAdapter)管理的项目的列表,类似于ListActivity。
      它提供一些方法来管理一个list view,例如 onListItemClick()回调来处理点击事件。

    • PreferenceFragment
      显示一个 Preference对象的层次结构的列表,类似于PreferenceActivity。
      这在为你的应用创建一个"设置"activity时有用处。





  • 相关阅读:
    go if 判断 完成随机分数的评级
    go for循环
    go 常量2
    go 常量定义和使用
    更新数据库某字段数据为流水号
    BPM设定操作超时
    BPM打印按钮
    BPM链接处理
    项目管理
    公司规划
  • 原文地址:https://www.cnblogs.com/lovecode/p/3209431.html
Copyright © 2011-2022 走看看