activity和fragment之前运行的生命周期
1.activity生命周期
2.fragment的生命周期
3.对比图
4.测试代码
package com.goso.testapp; import android.app.Activity;
import android.app.ListFragment;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListView; /**
* Demonstration of using ListFragment to show a list of items
* from a canned array.
*/
public class FragmentListArray extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.e("HJJ", "Activity &&&& onCreate...");
// Create the list fragment and add it as our sole content.
if (getFragmentManager().findFragmentById(android.R.id.content) == null) {
ArrayListFragment list = new ArrayListFragment();
getFragmentManager().beginTransaction().add(android.R.id.content, list).commit();
}
} @Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
Log.e("HJJ", "Activity &&&& onStart...");
} @Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
Log.e("HJJ", "Activity &&&& onResume...");
} @Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
Log.e("HJJ", "Activity &&&& onStop...");
} @Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
Log.e("HJJ", "Activity &&&& onPause...");
} @Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
Log.e("HJJ", "Activity &&&& onDestroy...");
} public static class ArrayListFragment extends ListFragment { @Override
public void onAttach(Activity activity) {
// TODO Auto-generated method stub
Log.e("HJJ", "ArrayListFragment **** onAttach...");
super.onAttach(activity);
} @Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
Log.e("HJJ", "ArrayListFragment **** onCreate...");
super.onCreate(savedInstanceState);
} @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
Log.e("HJJ", "ArrayListFragment **** onCreateView...");
return super.onCreateView(inflater, container, savedInstanceState);
} @Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Log.e("HJJ", "ArrayListFragment **** onActivityCreated...");
String[] array = new String[]{"C++", "JAVA", "PYTHON"};
setListAdapter(new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, array));
} @Override
public void onStart() {
// TODO Auto-generated method stub
Log.e("HJJ", "ArrayListFragment **** onStart...");
super.onStart();
} @Override
public void onResume() {
Log.e("HJJ", "ArrayListFragment **** onResume...");
// TODO Auto-generated method stub
super.onResume();
} @Override
public void onPause() {
Log.e("HJJ", "ArrayListFragment **** onPause...");
// TODO Auto-generated method stub
super.onPause();
} @Override
public void onStop() {
Log.e("HJJ", "ArrayListFragment **** onStop...");
// TODO Auto-generated method stub
super.onStop();
} @Override
public void onDestroyView() {
Log.e("HJJ", "ArrayListFragment **** onDestroyView...");
// TODO Auto-generated method stub
super.onDestroyView();
} @Override
public void onDestroy() {
// TODO Auto-generated method stub
Log.e("HJJ", "ArrayListFragment **** onDestroy...");
super.onDestroy();
} @Override
public void onDetach() {
Log.e("HJJ", "ArrayListFragment **** onDetach...");
// TODO Auto-generated method stub
super.onDetach();
} @Override
public void onListItemClick(ListView l, View v, int position, long id) {
Log.i("FragmentList", "Item clicked: " + id);
}
}
}
5.测试结果
onCreate过程
01-22 15:30:28.091: E/HJJ(10315): Activity &&&& onCreate...
01-22 15:30:28.091: E/HJJ(10315): ArrayListFragment **** onAttach...
01-22 15:30:28.091: E/HJJ(10315): ArrayListFragment **** onCreate...
01-22 15:30:28.115: E/HJJ(10315): ArrayListFragment **** onCreateView...
01-22 15:30:28.123: E/HJJ(10315): ArrayListFragment **** onActivityCreated... onStart过程
01-22 15:30:28.123: E/HJJ(10315): Activity &&&& onStart...
01-22 15:30:28.123: E/HJJ(10315): ArrayListFragment **** onStart... onResume过程
01-22 15:30:28.123: E/HJJ(10315): Activity &&&& onResume...
01-22 15:30:28.123: E/HJJ(10315): ArrayListFragment **** onResume... onPause过程
01-22 15:31:26.748: E/HJJ(10315): ArrayListFragment **** onPause...
01-22 15:31:26.748: E/HJJ(10315): Activity &&&& onPause... onStop过程
01-22 15:31:27.638: E/HJJ(10315): ArrayListFragment **** onStop...
01-22 15:31:27.638: E/HJJ(10315): Activity &&&& onStop... onStart过程
01-22 15:31:57.537: E/HJJ(10315): Activity &&&& onStart...
01-22 15:31:57.537: E/HJJ(10315): ArrayListFragment **** onStart... onResume过程
01-22 15:31:57.537: E/HJJ(10315): Activity &&&& onResume...
01-22 15:31:57.537: E/HJJ(10315): ArrayListFragment **** onResume... onPause过程
01-22 15:32:47.412: E/HJJ(10315): ArrayListFragment **** onPause...
01-22 15:32:47.412: E/HJJ(10315): Activity &&&& onPause... onStop过程
01-22 15:32:47.865: E/HJJ(10315): ArrayListFragment **** onStop...
01-22 15:32:47.865: E/HJJ(10315): Activity &&&& onStop... onDestroy过程
01-22 15:32:47.865: E/HJJ(10315): ArrayListFragment **** onDestroyView...
01-22 15:32:47.865: E/HJJ(10315): ArrayListFragment **** onDestroy...
01-22 15:32:47.865: E/HJJ(10315): ArrayListFragment **** onDetach...
01-22 15:32:47.865: E/HJJ(10315): Activity &&&& onDestroy...
搞定!!
activity和fragment之前运行的生命周期的更多相关文章
- 一句话、一张图记住Activity和Fragment之间错综复杂的生命周期关系
如果我们在Fragment和它的宿主Activity的生命周期中都加上Log日志,你能顺利写出他们的执行顺序吗?我们先来看一张Google官方的图片: 咋一听,Activity生命周期有七个方法,Fr ...
- 浅谈Android的Activity运行流程(生命周期)
关于Android的Activity运行流程,我们可以写一些程序来直观的查看Activity的运行流程.在这里我们使用Log工具来获取Activity运行日志.假如我们新建一个Android项目,Pr ...
- Android Activity、Service、BroadcastReceiver 的生命周期
Activity.Service.BroadcastReceiver这三个组建是Android开发中最常使用到的组件,在它们的生命周期的各个阶段我们需要针对性的做些事情,了解这些组件的生命周期有利于我 ...
- 小结Fragment与FragmentPagerAdapter的生命周期及其关系
本博客部分内容是来自http://blog.csdn.net/dreamzml/article/details/9951577 FragmentPagerAdapter FragmentPagerAd ...
- Activity学习(一):生命周期
一. 认识Activity Activity是Android的四大组件之一,那么它是什么呢?如果简单的理解,可以把它当成应用的一个显示的屏幕. Activity类处于android.app包中,继承体 ...
- 友盟页面统计 - 关于Viewpager中的Fragment的生命周期
Activity和Fragment各自理论上的生命周期 Activity的生命周期是较为经典也最清晰的,在此不表: Fragment从出现到广泛运用也有一段时间了,其标准生命周期也仅比Activity ...
- Jetpack 架构组件 Lifecycle 生命周期 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Fragment生命周期详解
处理fragement的生命周期 管理fragment的生命周期有些像管理activity的生命周期.Fragment可以生存在三种状态: Resumed: Fragment在一个运行中的activi ...
- Fragment 的生命周期及使用方法详解
Fragment 的基础知识介绍 1.1 概述 1.1.1 特性 By hebang32624 Fragment 是 activity 的界面中的一部分或一种行为.可以把多个 Fragment 组合到 ...
随机推荐
- 一:requests爬虫基础
一,什么是爬虫? 描述: 本质是一个自动化程序,一个模拟浏览器向某一个服务器发送请求获取响应资源的过程. 爬虫的基本流程 robots.txt协议 编写一个robots.txt的协议文件来约束爬虫程序 ...
- [原][粒子特效][spark]深入浅出osgSpark
背景: 目前我使用的spark粒子特效库是2.0 这个库好像是原来鬼火引擎的一部分,需要从github上找 现在我要将其使用到我自己开发的基于osgearth开的三维地图引擎中 步骤: 1.编译spa ...
- 力扣(LeetCode) 997. 找到小镇的法官
在一个小镇里,按从 1 到 N 标记了 N 个人.传言称,这些人中有一个是小镇上的秘密法官. 如果小镇的法官真的存在,那么: 小镇的法官不相信任何人. 每个人(除了小镇法官外)都信任小镇的法官. 只有 ...
- 《剑指offer》第五十三题(0到n-1中缺失的数字)
// 面试题53(二):0到n-1中缺失的数字 // 题目:一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字 // 都在范围0到n-1之内.在范围0到n-1的n个数字中有且只有一个数 ...
- Linux 安装SSH
●centOS/redhat安装SSH 查询openssh server服务状态:systemctl status sshd 安装sshd命令: yum install openssh-server ...
- Mac批量转换mp3为caf
创建一个sh文件,输入如下代码后运行. 遍历文件夹中的mp3然后使用afconvert命令进行转换. #!/bin/bash for i in *.mp3; do afconvert $i " ...
- 原生dom事件注册和移除事件的封装
var addEvent = (function() { var setListener; setListener = false; return function(el, ev, fn) { if ...
- 动态规划-独特的子字符串存在于Wraparound String总个数 Unique Substrings in Wraparound String
2018-09-01 22:50:59 问题描述: 问题求解: 如果单纯的遍历判断,那么如何去重保证unique是一个很困难的事情,事实上最初我就困在了这个点上. 后来发现是一个动态规划的问题,可以将 ...
- VA&RVA 和 RVA to RAW
VA&RVA VA指的是进程虚拟内存的绝对地址,RVA(Relative Virtual Address,相对虚拟地址)指从某个基准位置(ImageBase)开始的相对地址.VA与RVA满足下 ...
- linux进程管理之作业控制
作业控制 jobs ==================================================================================== 作业控制是 ...