您的位置:首页 > 移动开发 > Android开发

Android Fragment的生命周期

2015-07-17 11:58 465 查看
Activity初次加载

1111-------MainActivity-->oncreate

1111-------Myfragment-->onAttach

1111-------Myfragment-->oncreate

1111-------Myfragment-->onCreateView

1111-------Myfragment-->onActivityCreated

1111-------MainActivity-->onStart

1111-------Myfragment-->onStart

1111-------MainActivity-->onResume

1111-------Myfragment-->onResume

电话打入:

1111-------Myfragment-->onPause

1111-------MainActivity-->onPause

1111-------Myfragment-->onStop

1111-------MainActivity-->onStop

电话挂断:

1111-------MainActivity-->onStart

1111-------Myfragment-->onStart

1111-------MainActivity-->onResume

1111-------Myfragment-->onResume

销毁Activity

1111-------Myfragment-->onPause

1111-------MainActivity-->onPause

1111-------Myfragment-->onStop

1111-------MainActivity-->onStop

1111-------Myfragment-->onDestroyView

1111-------Myfragment-->onDestroy

1111-------Myfragment-->onDetach

1111-------MainActivity-->onDestroy

核心代码:

setContentView(R.layout.activity_main);
		Log.d(TAG, "1111--------->oncreate");
		manager = getFragmentManager();
		transaction = manager.beginTransaction();
		Myfragment myfragment = new Myfragment();
		transaction.add(R.id.line, myfragment);
		transaction.commit();


加入回退栈后通过这生命周期去了解生命栈的周期从而明白运行状态,在回退栈中前进退回 在那个方法中连接网络数据

从生命周期明白回退时不走Oncreate

第一个fragment被加载:

1111---Fragment1-->>onAttach

1111---Fragment1-->>onCreate

1111---Fragment1-->>onCreateView

1111---Fragment1-->>onActivityCreated

1111---Fragment1-->>onStart

1111---Fragment1-->>onResume

第二个fragment进来

1111---Fragment1-->>onPause

1111---Fragment1-->>onStop

1111---Fragment1-->>onDestroyView

1111---Fragment2-->>onAttach

1111---Fragment2-->>onCreate

1111---Fragment2-->>onCreateView

1111---Fragment2-->>onActivityCreated

1111---Fragment2-->>onStart

1111---Fragment2-->>onResume

第三个fragment进来

1111---Fragment2-->>onPause

1111---Fragment2-->>onStop

1111---Fragment2-->>onDestroyView

回退到第二个Fragment

1111---Fragment2-->>onCreateView

1111---Fragment2-->>onActivityCreated

1111---Fragment2-->>onStart

1111---Fragment2-->>onResume

核心代码:

transaction = manager.beginTransaction();
		
		switch (v.getId()) {
		case R.id.button1:
			Fragment1 fragment1 = new Fragment1();
			transaction.replace(R.id.center, fragment1, "fragment1");
			//添加到Activity管理的回退栈中
			transaction.addToBackStack("fragment1");
			break;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: