Android之Fragment学习笔记②(Fragment生命周期)

一. Fragment生命周期图

                                

二.Fragment生命周期方法介绍

Fragment的生命周期和activity生命周期很像,其生命周期方法如下所示。

onAttach: 绑定到activity(Fragment和Activity建立关联的时候调用)。
onCreate: 创建fragment
onCreateView:  创建fragment的布局(为Fragment加载布局时调用)。
onActivityCreated:  activity创建完成后(当Activity中的onCreate方法执行完后调用)。
onStart:  可见, 不可交互
onResume:  可见, 可交互
onPause:  部分可见, 不可交互
onStop: 不可见
onDestroyView:  销毁fragment的view对象(Fragment中的布局被移除时调用)。
onDestroy:  fragment销毁了
onDetach:  从activity解绑了(Fragment和Activity解除关联的时候调用)。

下面内容来自http://www.cnblogs.com/purediy/p/3276545.html

1. 当一个fragment被创建的时候,它会经历以下状态.

  • onAttach()
  • onCreate()
  • onCreateView()
  • onActivityCreated()

2. 当这个fragment对用户可见的时候,它会经历以下状态。

  • onStart()
  • onResume()

3. 当这个fragment进入“后台模式”的时候,它会经历以下状态。

  • onPause()
  • onStop()

4. 当这个fragment被销毁了(或者持有它的activity被销毁了),它会经历以下状态。

  • onPause()
  • onStop()
  • onDestroyView()
  • onDestroy() // 本来漏掉类这个回调,感谢xiangxue336提出。
  • onDetach()

5. 就像activitie一样,在以下的状态中,可以使用Bundle对象保存一个fragment的对象。

  • onCreate()
  • onCreateView()
  • onActivityCreated()

6. fragments的大部分状态都和activitie很相似,但fragment有一些新的状态。

  • onAttached() —— 当fragment被加入到activity时调用(在这个方法中可以获得所在的activity)。
  • onCreateView() —— 当activity要得到fragment的layout时,调用此方法,fragment在其中创建自己的layout(界面)。
  • onActivityCreated() —— 当activity的onCreated()方法返回后调用此方法
  • onDestroyView() —— 当fragment中的视图被移除的时候,调用这个方法。
  • onDetach() —— 当fragment和activity分离的时候,调用这个方法。

一旦activity进入resumed状态(也就是running状态),你就可以自由地添加和删除fragment了。因此,只有当activity在resumed状态时,fragment的生命周期才能独立的运转,其它时候是依赖于activity的生命周期变化的。

时间: 2024-08-04 07:46:09

Android之Fragment学习笔记②(Fragment生命周期)的相关文章

android学习笔记 activity生命周期&任务栈&activity启动模式

activity生命周期 完整生命周期 oncreate->onstart->onresume->onpause->onstop->ondestory 使用场景:应用程序退出自动保存数据 ondestory oncreate 可视生命周期 onstart->onresume->onpause->onstop 使用场景:应用程序最小化 暂停的操作 onstop onstart 前台生命周期 onresume->onpause 界面用户仍然可见,但是失去焦

IOS学习笔记——ViewController生命周期详解

在我之前的学习笔记中讨论过ViewController,过了这么久,对它也有了新的认识和体会,ViewController是我们在开发过程中碰到最多的朋友,今天就来好好认识一下它.ViewController是IOS开发中MVC模式中的C,ViewController是view的controller,ViewController的职责主要包括管理内部各个view的加载显示和卸载,同时负责与其他ViewController的通信和协调.在IOS中,有两类ViewController,一类是显示内容

iOS学习笔记—ViewController/生命周期

ViewController是iOS应用程序中重要的部分,是应用程序数据和视图之间的重要桥梁,ViewController管理应用中的众多视图.iOS的SDK中提供很多原生ViewController,以支持标准的用户界面,例如表视图控制器(UITableViewController).导航控制器(UINavigationController).标签栏控制器(UITabbarController)和iPad专有的UISplitViewController等. 按结构可以对iOS的所有ViewCo

iOS学习笔记-ViewController/生命周期

ViewController是iOS应用程序中重要的部分,是应用程序数据和视图之间的重要桥梁,ViewController管理应用中的众多视图.iOS的SDK中提供很多原生ViewController,以支持标准的用户界面,例如表视图控制器(UITableViewController).导航控制器(UINavigationController).标签栏控制器(UITabbarController)和iPad专有的UISplitViewController等. 按结构可以对iOS的所有ViewCo

MVC学习笔记---MVC生命周期

Asp.net应用程序管道处理用户请求时特别强调"时机",对Asp.net生命周期的了解多少直接影响我们写页面和控件的效率.因此在2007年和2008年我在这个话题上各写了一篇文章: <日志不说谎--Asp.net的生命周期> <日志不说谎--Asp.net的生命周期 [结题]> <两个粒度看Asp.net生命周期> 对于Asp.net MVC,我对它的生命周期还是兴趣很浓,于是提出两个问题: 一个HTTP请求从IIS移交到Asp.net运行时,As

MVC学习笔记---MVC生命周期及管道

ASP.NET和ASP.NET MVC的HttpApplication请求处理管道有共同的部分和不同之处,本系列将体验ASP.NET MVC请求处理管道生命周期的19个关键环节. ①以IIS6.0为例,首先由w3wp.exe维护着一个工作进程 ②如果是第一次加载,由Aspnet_isapi.dll加载.NET运行时 ③一个工作进程里有一个应用程序池,其中可以承载多个应用程序域AppDomain ④HTTP.SYS接收请求,通过应用程序域工厂AppDomainFactory创建应用程序域AppDo

vue2.0学习笔记之生命周期

beforeCreate 组件实例刚刚被创建,属性都没有 created  实例已经创建完成,属性已经绑定 beforeMount 模板编译之前 mounted 模板编译之后,代替之前ready beforeUpdate        组件更新之前 updated                 组件更新完毕 beforeDestroy       组件销毁前 destroyed              组件销毁后 <!DOCTYPE html> <html lang="en

iOS学习笔记-UIViewController生命周期

当一个视图控制器被创建,并在屏幕上显示的时候. 代码的执行顺序1. alloc                                   创建对象,分配空间2.init (initWithNibName) 初始化对象,初始化数据3.loadView                          从nib载入视图 ,通常这一步不需要去干涉.除非你没有使用xib文件创建视图4.viewDidLoad                   载入完成,可以进行自定义数据以及动态创建其他控件5

Android -- Service的开启关闭与生命周期

Service是Android 系统中的四大组件之一,是在一段不定的时间运行在后台,不和用户交互应用组件. service可以在很多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD卡上文件的变化等等. 生命周期                                                                                  context.startService() 启动流程: con

Android四大基本组件介绍与生命周期

主要参考: 1.http://blog.csdn.net/android_tutor/article/details/5772285 2.http://www.cnblogs.com/bravestarrhu/archive/2012/05/02/2479461.html Android四大基本组件介绍与生命周期,布布扣,bubuko.com