深刻的理解安卓fragment生命周期期 都在做什么,安卓fragment生命周期期

您所在的位置: &
理解Fragment的生命周期(2)
理解Fragment的生命周期(2)
清华大学出版社
《Android 平板电脑应用开发入门经典》第2章Android平板应用的组件,本章将会介绍构成Android平板应用的各种组件,以及特别针对平板应用所设计的Android 3.0中的一些新特性。本章将特别介绍Android 3.0中新的Fragment与Action Bar API,以及如何使用它们开发引入注目的平板应用。本节为大家介绍Fragment的生命周期。
2.2.2& 理解Fragment的生命周期(2)
(2) 按下Ctrl+F11组合键将Android模拟器切换至landscape模式。
(3) 在Eclipse中按下F11键,在Android模拟器中调试应用。
(4) 当应用在模拟器中加载时,LogCat窗口中输出的内容如下所示(Window|Show View|LogCat):04-02&06:55:38.953:&DEBUG/Fragment&1(6818):&onAttach &04-02&06:55:38.953:&DEBUG/Fragment&1(6818):&onCreate &04-02&06:55:38.963:&DEBUG/Fragment&1(6818):&onCreateView &04-02&06:55:38.983:&DEBUG/Fragment&1(6818):&onActivityCreated &04-02&06:55:38.983:&DEBUG/Fragment&1(6818):&onStart &04-02&06:55:39.003:&DEBUG/Fragment&1(6818):&onResume &
(5) 按下模拟器上的Home按钮。LogCat窗口中输出的内容如下所示: 04-02&04:03:45.543:&DEBUG/Fragments(2606):&onPause &04-02&04:03:47.394:&DEBUG/Fragments(2606):&onStop&
(6) 在模拟器上单击屏幕右上角的Apps按钮再次启动应用。这一次,LogCat窗口中输出的内容如下所示: 04-02&04:04:32.703:&DEBUG/Fragments(2606):&onStart &04-02&04:04:32.703:&DEBUG/Fragments(2606):&onResume&
(7) 最后,单击模拟器上的Back按钮。现在会看到如下输出:04-02&07:23:07.393:&DEBUG/Fragment&1(7481):&onPause &04-02&07:23:07.393:&DEBUG/Fragment&1(7481):&onStop &04-02&07:23:07.393:&DEBUG/Fragment&1(7481):&onDestroyView &04-02&07:23:07.403:&DEBUG/Fragment&1(7481):&onDestroy &04-02&07:23:07.413:&DEBUG/Fragment&1(7481):&onDetach &
与活动类似,Android中的Fragment也拥有自己的生命周期。如你所见,当创建Fragment时,它会经历如下状态:
onAttach()
onCreate()
onCreateView()
onActivityCreated()
当Fragment变为可见时,它会经历如下状态:
onResume()
当Fragment进入后台模式时,它会经历如下状态:
当Fragment销毁时(当托管Fragment的活动销毁时),它会经历如下状态:
onDestroyView()
onDestroy()
onDetach()
【责任编辑: TEL:(010)】&&&&&&
关于&&&&的更多文章
本书以Android 4.X进行开发示范,通过大量图示与step by step方
本书描述了黑客用默默无闻的行动为数字世界照亮了一条道路的故事。
本书以Android 4.X进行开发示范,通过大量图示与step
本书手把手地教读者用C语言制作两种编程语言:crowbar
享誉全球的未来学家理查德.沃森,用科学和多元的视角
osCommerce是一款免费的、开放源代码的专业电子商务解决方案。本书以通俗易懂的语言向读者展示了该软件强大的功能和简易的操作方
51CTO旗下网站Android(33)
官网帮助文档链接:
&/guide/components/fragments.html
主要看两张图,和跑代码
一,Fragment的生命周&
& & & & &&
二,与Activity生命周期的对比
场景演示 : 切换到该Fragment
11-29 14:26:35.095: D/AppListFragment(7649): onAttach
11-29 14:26:35.095: D/AppListFragment(7649): onCreate
11-29 14:26:35.095: D/AppListFragment(7649): onCreateView
11-29 14:26:35.100: D/AppListFragment(7649): onActivityCreated
11-29 14:26:35.120: D/AppListFragment(7649): onStart
11-29 14:26:35.120: D/AppListFragment(7649): onResume
屏幕灭掉:
11-29 14:27:35.185: D/AppListFragment(7649): onPause
11-29 14:27:35.205: D/AppListFragment(7649): onSaveInstanceState
11-29 14:27:35.205: D/AppListFragment(7649): onStop
11-29 14:33:13.240: D/AppListFragment(7649): onStart
11-29 14:33:13.275: D/AppListFragment(7649): onResume
切换到其他Fragment:
11-29 14:33:33.655: D/AppListFragment(7649): onPause
11-29 14:33:33.655: D/AppListFragment(7649): onStop
11-29 14:33:33.660: D/AppListFragment(7649): onDestroyView
切换回本身的Fragment:
11-29 14:33:55.820: D/AppListFragment(7649): onCreateView
11-29 14:33:55.825: D/AppListFragment(7649): onActivityCreated
11-29 14:33:55.825: D/AppListFragment(7649): onStart
11-29 14:33:55.825: D/AppListFragment(7649): onResume
11-29 14:34:26.590: D/AppListFragment(7649): onPause
11-29 14:34:26.880: D/AppListFragment(7649): onSaveInstanceState
11-29 14:34:26.880: D/AppListFragment(7649): onStop
11-29 14:36:51.940: D/AppListFragment(7649): onStart
11-29 14:36:51.940: D/AppListFragment(7649): onResume
11-29 14:37:03.020: D/AppListFragment(7649): onPause
11-29 14:37:03.155: D/AppListFragment(7649): onStop
11-29 14:37:03.155: D/AppListFragment(7649): onDestroyView
11-29 14:37:03.165: D/AppListFragment(7649): onDestroy
11-29 14:37:03.165: D/AppListFragment(7649): onDetach
比Activity多了一些生命周期,完整和Activity对接上,大家好好利用。
转自:http://blog.csdn.net/forever_crying/article/details/8238863/
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:305473次
积分:3701
积分:3701
排名:第6673名
原创:54篇
转载:182篇
评论:23条
(6)(12)(4)(3)(8)(5)(5)(1)(1)(1)(2)(8)(3)(5)(1)(4)(2)(1)(9)(18)(1)(3)(34)(3)(3)(2)(7)(5)(7)(4)(1)(6)(3)(2)(2)(4)(6)(1)(1)(23)(13)(8)(1)android资料参考篇(29)
Fragments的生命周期&
& & 每一个fragments 都有自己的一套生命周期回调方法和处理自己的用户输入事件。 对应生命周期可参考下图:
在贴上另外一张图:
& & & & & & & & & & & & & & & & & & & & & & & & & & & & &
创建片元(Creating a Fragment)
要创建一个fragment,必须创建一个fragment的子类(或是继承自它的子类)。fragment类的代码看起来很像activity。它与activity一样都有回调函数,例如onCreate(),onStart(),onPause(),和onStop()。事实上,如果你正在将一个现成的Android应用转而使用Fragment来实现,可以简单的将代码从activity的回调函数移植到各自的fragment回调函数中。
一般情况下,你至少需要实现以下几个生命周期方法:
onCreate()&
在创建fragment时系统会调用此方法。在实现代码中,你可以初始化想要在fragment中保持的那些必要组件,当fragment处于暂停或者停止状态之后可重新启用它们。
onCreateView()&
在第一次为fragment绘制用户界面时系统会调用此方法。为fragment绘制用户界面,这个函数必须要返回所绘出的fragment的根View。如果fragment没有用户界面可以返回空。
onPause()&
系统回调用该函数作为用户离开fragment的第一个预兆(尽管这并不总意味着fragment被销毁)。在当前用户会话结束之前,通常要在这里提交任何应该持久化的变化(因为用户可能不再返回)。
大部分应用程序都应该至少为每个fragment实现这三个方法,但是还有许多其他用以操纵fragment生命周期中各个阶段的回调函数。所有生命周期中的回调函数在操纵fragment生命周期一节中稍后再做讨论。
除了基类fragment,这里还有几个你可能会继承的子类:
DialogFragment&
显示一个浮动的对话框。使用这个类创建对话框是使用Activity类对话框工具方法之外的另一个不错的选择,因为你可以把fragment对话框并入到由activity管理的fragments后台栈中,允许用户返回到一个已经摒弃的fragment。
ListFragment&
显示一个由适配器管理的条目列表(例如SimpleCursorAdapter),类似于ListActivity。并且提供了许多管理列表视图的函数,例如处理点击事件的onListItemClick()回调函数。
PreferenceFragment&
显示一个Preference对象的体系结构列表,类似于preferenceActivity。这在为应用程序创建“设置”activity时是很实用的。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:40260次
排名:千里之外
原创:17篇
转载:38篇
(1)(1)(2)(3)(1)(3)(2)(2)(2)(2)(8)(12)(1)(8)(7)(1)

我要回帖

更多关于 fragment生命周期详解 的文章

 

随机推荐