[Android]Fragment生命周期
16lz
2021-01-24
官方文档中有详细的文字说明,不过最好还是实践下,熟悉过程。http://developer.android.com/guide/components/fragments.html
一、Activity的生命周期图:
二、Fragment生命周期图
三、对比图
四、测试代码:
[java] view plain copy- packagecom.goso.testapp;
- importandroid.app.Activity;
- importandroid.app.ListFragment;
- importandroid.os.Bundle;
- importandroid.util.Log;
- importandroid.view.LayoutInflater;
- importandroid.view.View;
- importandroid.view.ViewGroup;
- importandroid.widget.ArrayAdapter;
- importandroid.widget.ListView;
- /**
- *DemonstrationofusingListFragmenttoshowalistofitems
- *fromacannedarray.
- */
- publicclassFragmentListArrayextendsActivity{
- @Override
- protectedvoidonCreate(BundlesavedInstanceState){
- super.onCreate(savedInstanceState);
- Log.e("HJJ","Activity&&&&onCreate...");
- //Createthelistfragmentandadditasoursolecontent.
- if(getFragmentManager().findFragmentById(android.R.id.content)==null){
- ArrayListFragmentlist=newArrayListFragment();
- getFragmentManager().beginTransaction().add(android.R.id.content,list).commit();
- }
- }
- @Override
- protectedvoidonStart(){
- //TODOAuto-generatedmethodstub
- super.onStart();
- Log.e("HJJ","Activity&&&&onStart...");
- }
- @Override
- protectedvoidonResume(){
- //TODOAuto-generatedmethodstub
- super.onResume();
- Log.e("HJJ","Activity&&&&onResume...");
- }
- @Override
- protectedvoidonStop(){
- //TODOAuto-generatedmethodstub
- super.onStop();
- Log.e("HJJ","Activity&&&&onStop...");
- }
- @Override
- protectedvoidonPause(){
- //TODOAuto-generatedmethodstub
- super.onPause();
- Log.e("HJJ","Activity&&&&onPause...");
- }
- @Override
- protectedvoidonDestroy(){
- //TODOAuto-generatedmethodstub
- super.onDestroy();
- Log.e("HJJ","Activity&&&&onDestroy...");
- }
- publicstaticclassArrayListFragmentextendsListFragment{
- @Override
- publicvoidonAttach(Activityactivity){
- //TODOAuto-generatedmethodstub
- Log.e("HJJ","ArrayListFragment****onAttach...");
- super.onAttach(activity);
- }
- @Override
- publicvoidonCreate(BundlesavedInstanceState){
- //TODOAuto-generatedmethodstub
- Log.e("HJJ","ArrayListFragment****onCreate...");
- super.onCreate(savedInstanceState);
- }
- @Override
- publicViewonCreateView(LayoutInflaterinflater,ViewGroupcontainer,
- BundlesavedInstanceState){
- //TODOAuto-generatedmethodstub
- Log.e("HJJ","ArrayListFragment****onCreateView...");
- returnsuper.onCreateView(inflater,container,savedInstanceState);
- }
- @Override
- publicvoidonActivityCreated(BundlesavedInstanceState){
- super.onActivityCreated(savedInstanceState);
- Log.e("HJJ","ArrayListFragment****onActivityCreated...");
- String[]array=newString[]{"C++","JAVA","PYTHON"};
- setListAdapter(newArrayAdapter<String>(getActivity(),
- android.R.layout.simple_list_item_1,array));
- }
- @Override
- publicvoidonStart(){
- //TODOAuto-generatedmethodstub
- Log.e("HJJ","ArrayListFragment****onStart...");
- super.onStart();
- }
- @Override
- publicvoidonResume(){
- Log.e("HJJ","ArrayListFragment****onResume...");
- //TODOAuto-generatedmethodstub
- super.onResume();
- }
- @Override
- publicvoidonPause(){
- Log.e("HJJ","ArrayListFragment****onPause...");
- //TODOAuto-generatedmethodstub
- super.onPause();
- }
- @Override
- publicvoidonStop(){
- Log.e("HJJ","ArrayListFragment****onStop...");
- //TODOAuto-generatedmethodstub
- super.onStop();
- }
- @Override
- publicvoidonDestroyView(){
- Log.e("HJJ","ArrayListFragment****onDestroyView...");
- //TODOAuto-generatedmethodstub
- super.onDestroyView();
- }
- @Override
- publicvoidonDestroy(){
- //TODOAuto-generatedmethodstub
- Log.e("HJJ","ArrayListFragment****onDestroy...");
- super.onDestroy();
- }
- @Override
- publicvoidonDetach(){
- Log.e("HJJ","ArrayListFragment****onDetach...");
- //TODOAuto-generatedmethodstub
- super.onDetach();
- }
- @Override
- publicvoidonListItemClick(ListViewl,Viewv,intposition,longid){
- Log.i("FragmentList","Itemclicked:"+id);
- }
- }
- }
五、结果
- onCreate过程
- 01-2215:30:28.091:E/HJJ(10315):Activity&&&&onCreate...
- 01-2215:30:28.091:E/HJJ(10315):ArrayListFragment****onAttach...
- 01-2215:30:28.091:E/HJJ(10315):ArrayListFragment****onCreate...
- 01-2215:30:28.115:E/HJJ(10315):ArrayListFragment****onCreateView...
- 01-2215:30:28.123:E/HJJ(10315):ArrayListFragment****onActivityCreated...
- onStart过程
- 01-2215:30:28.123:E/HJJ(10315):Activity&&&&onStart...
- 01-2215:30:28.123:E/HJJ(10315):ArrayListFragment****onStart...
- onResume过程
- 01-2215:30:28.123:E/HJJ(10315):Activity&&&&onResume...
- 01-2215:30:28.123:E/HJJ(10315):ArrayListFragment****onResume...
- onPause过程
- 01-2215:31:26.748:E/HJJ(10315):ArrayListFragment****onPause...
- 01-2215:31:26.748:E/HJJ(10315):Activity&&&&onPause...
- onStop过程
- 01-2215:31:27.638:E/HJJ(10315):ArrayListFragment****onStop...
- 01-2215:31:27.638:E/HJJ(10315):Activity&&&&onStop...
- onStart过程
- 01-2215:31:57.537:E/HJJ(10315):Activity&&&&onStart...
- 01-2215:31:57.537:E/HJJ(10315):ArrayListFragment****onStart...
- onResume过程
- 01-2215:31:57.537:E/HJJ(10315):Activity&&&&onResume...
- 01-2215:31:57.537:E/HJJ(10315):ArrayListFragment****onResume...
- onPause过程
- 01-2215:32:47.412:E/HJJ(10315):ArrayListFragment****onPause...
- 01-2215:32:47.412:E/HJJ(10315):Activity&&&&onPause...
- onStop过程
- 01-2215:32:47.865:E/HJJ(10315):ArrayListFragment****onStop...
- 01-2215:32:47.865:E/HJJ(10315):Activity&&&&onStop...
- onDestroy过程
- 01-2215:32:47.865:E/HJJ(10315):ArrayListFragment****onDestroyView...
- 01-2215:32:47.865:E/HJJ(10315):ArrayListFragment****onDestroy...
- 01-2215:32:47.865:E/HJJ(10315):ArrayListFragment****onDetach...
- 01-2215:32:47.865:E/HJJ(10315):Activity&&&&onDestroy...
更多相关文章
- Android(安卓)多媒体扫描过程
- android 颜色值 代码
- Android系统Home应用程序(Launcher)的启动过程源代码分析
- Android(安卓)自定义ScrollView 实现拉下伸缩头部view
- android单元测试----junit
- android之HttpPost&HttpGet使用方法介绍
- Android(安卓)- 销毁指定Activity
- Android(安卓)Model正确使用姿势——AutoValue
- android 编译源码 错误解决2