Android笔记 fragment的生命周期

demo执行顺序

10-22 20:38:10.281: I/System.out(26337): onAttach     附加到Activity 

10-22 20:38:10.281: I/System.out(26337): onCreate    Fragment即将创建
10-22 20:38:10.281: I/System.out(26337): onCreateView    得到Fragment要显示的内容(一般会重写)
10-22 20:38:10.281: I/System.out(26337): onActivityCreated  Activity创建完毕
10-22 20:38:10.281: I/System.out(26337): onStart 用户空间

10-22 20:38:10.281: I/System.out(26337): onResume 获取焦点


点击返回键

10-22 20:41:21.359: I/System.out(26337): onPause 失去焦点
10-22 20:41:21.906: I/System.out(26337): onStop  用户不可见
10-22 20:41:21.906: I/System.out(26337): onDestroyView 清除Fragment显示的view对象(一般会重写 在此中清除view对象 置空等操作)
10-22 20:41:21.914: I/System.out(26337): onDestroy 销毁Fragment
10-22 20:41:21.914: I/System.out(26337): onDetach 解除挂载

Fragment生命周期与Activity生命周期类似 多了如上加粗的几个生命周期


源代码与 博文  

Android笔记 fragment入门 动态加载fragment demo+ 判断横竖屏 

类似 Fragment1.Java修改如下

package com.example.a119fragmentstart;

import android.app.Activity;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

public class Fragment1 extends Fragment {
	// 当Fragment被创建时调用 一般返回Fragment显示的对象
	@Override
	public View onCreateView(LayoutInflater inflater, ViewGroup container,
			Bundle savedInstanceState) {
		System.out.println("onCreateView");
		// null代表返回独立的view对象
		return inflater.inflate(R.layout.fragment1, null);
	}

	@Override
	public void onAttach(Activity activity) {
		// 附属
		System.out.println("onAttach");
		super.onAttach(activity);
	}

	@Override
	public void onCreate(Bundle savedInstanceState) {
		// 创建
		System.out.println("onCreate");
		super.onCreate(savedInstanceState);
	}

	@Override
	public void onActivityCreated(Bundle savedInstanceState) {
		// 只有Activity启起来 Fragment才能创建
		System.out.println("onActivityCreated");
		super.onActivityCreated(savedInstanceState);
	}

	@Override
	public void onStart() {
		// 界面变成用户可见调用
		System.out.println("onStart");
		super.onStart();
	}

	@Override
	public void onResume() {
		// 获取焦点
		System.out.println("onResume");
		super.onResume();
	}

	@Override
	public void onPause() {
		// 失去焦点
		System.out.println("onPause");
		super.onPause();
	}

	@Override
	public void onStop() {
		// 界面变成用户不可见调用
		System.out.println("onStop");
		super.onStop();
	}

	@Override
	public void onDestroyView() {
		System.out.println("onDestroyView");
		super.onDestroyView();
	}

	@Override
	public void onDestroy() {
		System.out.println("onDestroy");
		super.onDestroy();
	}

	@Override
	public void onDetach() {
		// 取消附属
		System.out.println("onDetach");
		super.onDetach();
	}

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值