Activity和Fragment生命周期
2015-08-04 12:54
597 查看
Activity和Fragment生命周期的关系如下面的。主要是通过log了解他们的生命周期。我们通常很多事情都是直接在onCreate里面做了。但是其实有的事情是应该在其他的
步骤完成。目前我使用到的是更新UI及数据的操作应该在onStart里面做。因为跳到其他界面进行编辑后返回原来的界面时
往往会对UI进行更新,这时候需要在onStart里面跟新一下。下面对照这个图。写了一个简单的程序。有三个Fragment :FirstFragment,SecondFragment,ThirdFragment,分别依附这三个activity:FirstActivty,SecondActivity,ThirdActivity。其中FirstFragment两个按钮分别可以跳到SecondActivity和ThirdActivity。ThirdActivity是一个对话框(在AndroidManifest.xml里面可以设置)。
启动FirstActivity --> 启动SecondActivity ---> 返回FirstActivity ---> 退出FirstActivty 的log
//启动FirstActvity
08-04 16:24:48.816: I/DBG(966): FirstActivity-> onCreate
08-04 16:24:48.817: I/DBG(966): FirstFragment-> onAttach
08-04 16:24:48.818: I/DBG(966): FirstFragment-> onCreate
08-04 16:24:48.818: I/DBG(966): FirstFragment-> onCreateView
08-04 16:24:48.823: I/DBG(966): FirstFragment-> onActivityCreated
08-04 16:24:48.824: I/DBG(966): FirstFragment-> onStart
08-04 16:24:48.824: I/DBG(966): FirstActivity-> onStart
08-04 16:24:48.825: I/DBG(966): FirstActivity-> onResume
08-04 16:24:48.825: I/DBG(966): FirstFragment-> onResume
//按键启动了SecondActvity
08-04 16:24:49.759: I/DBG(966): FirstFragment-> onPause
08-04 16:24:49.759: I/DBG(966): FirstActivity-> onPause
08-04 16:24:49.794: I/DBG(966): SecondActivity-> onCreate
08-04 16:24:49.795: I/DBG(966): SecondFragment-> onAttach
08-04 16:24:49.795: I/DBG(966): SecondFragment-> onCreate
08-04 16:24:49.796: I/DBG(966): SecondFragment-> onCreateView
08-04 16:24:49.799: I/DBG(966): SecondFragment-> onActivityCreated
08-04 16:24:49.799: I/DBG(966): SecondFragment-> onStart
08-04 16:24:49.799: I/DBG(966): SecondActivity-> onStart
08-04 16:24:49.800: I/DBG(966): SecondActivity-> onResume
08-04 16:24:49.801: I/DBG(966): SecondFragment-> onResume
08-04 16:24:50.086: I/DBG(966): FirstFragment-> onStop
08-04 16:24:50.087: I/DBG(966): FirstActivity-> onStop
//按取消键返回到FirstActvity,所以一些刷新显示的动作应该在onstart里面执行
08-04 16:24:51.208: I/DBG(966): SecondFragment-> onPause
08-04 16:24:51.209: I/DBG(966): SecondActivity-> onPause
08-04 16:24:51.214: I/DBG(966): FirstActivity-> onRestart
08-04 16:24:51.215: I/DBG(966): FirstFragment-> onStart
08-04 16:24:51.215: I/DBG(966): FirstActivity-> onStart
08-04 16:24:51.216: I/DBG(966): FirstActivity-> onResume
08-04 16:24:51.216: I/DBG(966): FirstFragment-> onResume
08-04 16:24:51.478: I/DBG(966): SecondFragment-> onStop
08-04 16:24:51.479: I/DBG(966): SecondActivity-> onStop
08-04 16:24:51.480: I/DBG(966): SecondFragment-> onDestroyView
08-04 16:24:51.482: I/DBG(966): SecondFragment-> onDestroy
08-04 16:24:51.483: I/DBG(966): SecondFragment-> onDetach
08-04 16:24:51.484: I/DBG(966): SecondActivity-> onDestroy
//按取消键退出FirstActvity
08-04 16:24:52.836: I/DBG(966): FirstFragment-> onPause
08-04 16:24:52.837: I/DBG(966): FirstActivity-> onPause
08-04 16:24:53.124: I/DBG(966): FirstFragment-> onStop
08-04 16:24:53.127: I/DBG(966): FirstActivity-> onStop
08-04 16:24:53.127: I/DBG(966): FirstFragment-> onDestroyView
08-04 16:24:53.128: I/DBG(966): FirstFragment-> onDestroy
08-04 16:24:53.129: I/DBG(966): FirstFragment-> onDetach
08-04 16:24:53.129: I/DBG(966): FirstActivity-> onDestroy
启动FirstActivity --> 启动ThirdActivity ---> 返回FirstActivity ---> 退出FirstActivty 的log
代码点击这里下载:
步骤完成。目前我使用到的是更新UI及数据的操作应该在onStart里面做。因为跳到其他界面进行编辑后返回原来的界面时
往往会对UI进行更新,这时候需要在onStart里面跟新一下。下面对照这个图。写了一个简单的程序。有三个Fragment :FirstFragment,SecondFragment,ThirdFragment,分别依附这三个activity:FirstActivty,SecondActivity,ThirdActivity。其中FirstFragment两个按钮分别可以跳到SecondActivity和ThirdActivity。ThirdActivity是一个对话框(在AndroidManifest.xml里面可以设置)。
启动FirstActivity --> 启动SecondActivity ---> 返回FirstActivity ---> 退出FirstActivty 的log
//启动FirstActvity
08-04 16:24:48.816: I/DBG(966): FirstActivity-> onCreate
08-04 16:24:48.817: I/DBG(966): FirstFragment-> onAttach
08-04 16:24:48.818: I/DBG(966): FirstFragment-> onCreate
08-04 16:24:48.818: I/DBG(966): FirstFragment-> onCreateView
08-04 16:24:48.823: I/DBG(966): FirstFragment-> onActivityCreated
08-04 16:24:48.824: I/DBG(966): FirstFragment-> onStart
08-04 16:24:48.824: I/DBG(966): FirstActivity-> onStart
08-04 16:24:48.825: I/DBG(966): FirstActivity-> onResume
08-04 16:24:48.825: I/DBG(966): FirstFragment-> onResume
//按键启动了SecondActvity
08-04 16:24:49.759: I/DBG(966): FirstFragment-> onPause
08-04 16:24:49.759: I/DBG(966): FirstActivity-> onPause
08-04 16:24:49.794: I/DBG(966): SecondActivity-> onCreate
08-04 16:24:49.795: I/DBG(966): SecondFragment-> onAttach
08-04 16:24:49.795: I/DBG(966): SecondFragment-> onCreate
08-04 16:24:49.796: I/DBG(966): SecondFragment-> onCreateView
08-04 16:24:49.799: I/DBG(966): SecondFragment-> onActivityCreated
08-04 16:24:49.799: I/DBG(966): SecondFragment-> onStart
08-04 16:24:49.799: I/DBG(966): SecondActivity-> onStart
08-04 16:24:49.800: I/DBG(966): SecondActivity-> onResume
08-04 16:24:49.801: I/DBG(966): SecondFragment-> onResume
08-04 16:24:50.086: I/DBG(966): FirstFragment-> onStop
08-04 16:24:50.087: I/DBG(966): FirstActivity-> onStop
//按取消键返回到FirstActvity,所以一些刷新显示的动作应该在onstart里面执行
08-04 16:24:51.208: I/DBG(966): SecondFragment-> onPause
08-04 16:24:51.209: I/DBG(966): SecondActivity-> onPause
08-04 16:24:51.214: I/DBG(966): FirstActivity-> onRestart
08-04 16:24:51.215: I/DBG(966): FirstFragment-> onStart
08-04 16:24:51.215: I/DBG(966): FirstActivity-> onStart
08-04 16:24:51.216: I/DBG(966): FirstActivity-> onResume
08-04 16:24:51.216: I/DBG(966): FirstFragment-> onResume
08-04 16:24:51.478: I/DBG(966): SecondFragment-> onStop
08-04 16:24:51.479: I/DBG(966): SecondActivity-> onStop
08-04 16:24:51.480: I/DBG(966): SecondFragment-> onDestroyView
08-04 16:24:51.482: I/DBG(966): SecondFragment-> onDestroy
08-04 16:24:51.483: I/DBG(966): SecondFragment-> onDetach
08-04 16:24:51.484: I/DBG(966): SecondActivity-> onDestroy
//按取消键退出FirstActvity
08-04 16:24:52.836: I/DBG(966): FirstFragment-> onPause
08-04 16:24:52.837: I/DBG(966): FirstActivity-> onPause
08-04 16:24:53.124: I/DBG(966): FirstFragment-> onStop
08-04 16:24:53.127: I/DBG(966): FirstActivity-> onStop
08-04 16:24:53.127: I/DBG(966): FirstFragment-> onDestroyView
08-04 16:24:53.128: I/DBG(966): FirstFragment-> onDestroy
08-04 16:24:53.129: I/DBG(966): FirstFragment-> onDetach
08-04 16:24:53.129: I/DBG(966): FirstActivity-> onDestroy
启动FirstActivity --> 启动ThirdActivity ---> 返回FirstActivity ---> 退出FirstActivty 的log
代码点击这里下载:
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories