Android Fragment(译)

类概述

一个Fragment是应用程序用户界面的片段,被放置在Activity中。与Fragment的交互是通过FragmentManager完成的,如 Activity.getFragmentManager()and Fragment.getFragmentManager().

Fragment类使用方式有很多从而实现各种各样的结果。其核心是,他替代了Activity中的部分操作或者界面。Fragmnet与Activity紧密相连,不能被单独使用。Fragment可以定义自己的生命周期,但生命周期依赖于Activity。如果活动停止了,其中的所有fragments都将不被启动,当活动销毁了,所有的Fragment也将销毁。

Fragment的子类必须包含一个共有的空构造器。经常地,系统框架会重新实例化一个Fragment,特别是状态恢复时,系统会默认地调用这个构造器。如果没有空构造器,在恢复期间可能会运行出错。

四大主题:

  1. Older Platforms
  2. Lifecycle
  3. Layout
  4. Back Stack

Old Platforms 

当Fragment的API被引进时,该版本的API也可以被旧版本的平台使用。

生命周期

虽然Fragment的生命周期与其附属的Activity绑定,他也有自身的生命周期。他包含基本的活动周期方法比如onResume(),而有一些与活动和生成UI交互。

下面这些方法会使Fragment回到恢复状态:

  1. onAttach(Activity) 绑定到Activit时调用
  2. onCreate(Bundle) 初始化Fragment时调用
  3. onCreateView(LayoutInflater, ViewGroup, Bundle) 创建Fragment上的图层,并返回
  4. onActivityCreated(Bundle) 告诉Fragment活动已经完成创建
  5. onViewStateRestored(Bundle) 告诉Fragment所有图层状态均已恢复
  6. onStart() 使Fragment可见
  7. onResume() 使Fragment可操作

当Fragment不在被使用时,他会经历下面几个callbacks:

  1. onPause() 无法交互
  2. onStop()  不再可视
  3. onDestroyView() 销毁Fragment中的所有Views
  4. onDestroy() 销毁Fragment的状态
  5. onDetach() 注销与活动的联系

布局

Fragment的布局是应用布局的一部分,让你更好地模块化代码,更方便地调整用户界面。例如,一个简单的程序是由一些items组成,每个item的外观则单独显示。

后退栈

当Frag的事务处理被修改时,会被放置在活动的内部后退栈中。当用户按下返回按钮时,在后退栈中的事务处理会先弹出,再结束活动。

 

posted on 2015-04-24 17:01  青崖绿舟  阅读(184)  评论(0)    收藏  举报

导航