Android 碎片管理

来源:互联网 发布:idea怎么关联源码 编辑:程序博客网 时间:2024/06/05 03:08
一个宿主Activity可以视为主页面,碎片Fragment视为其中子页面,然后使用FragmentManager进行管理,选择性的让碎片显示和替换,页面切换流畅。又因碎片具有生命周期,还可以宿主沟通,使用起来会让项目效率提高许多。这里总结一些宿主也碎片之前是如何搭配工作的知识。

一、基础知识:
1、fragment生命周期
2、fragment与activity对比:

   MainActivity: 
1、布局中放置一个四大布局之一,命名id为fragment_content_main

2、FragmentMannerger  fm=this.getFragmentManager();  //实例化碎片管理器

3、替换碎片:
  FragmentTransaction fmTransaction=fmManager.beginTransaction();
  fmTransaction.replace(R.id.fragment_content_main, Fragment fragment);
  fmTransaction.commit();

切换到其他Fragment:
11-29 14:33:33.655: D/AppListFragment(7649): onPause
11-29 14:33:33.655: D/AppListFragment(7649): onStop
11-29 14:33:33.660: D/AppListFragment(7649): onDestroyView


切换回本身的Fragment:

11-29 14:33:55.820: D/AppListFragment(7649): onCreateView
11-29 14:33:55.825: D/AppListFragment(7649): onActivityCreated
11-29 14:33:55.825: D/AppListFragment(7649): onStart
11-29 14:33:55.825: D/AppListFragment(7649): onResume


二、交互知识:
        1、MainActivity 使用碎片中的控件:
 Fragment2 fragment2=(Fragment2)getFragmentManager().findFragmentById(R.id.fragment2);

2、碎片中使用MainActivity的 控件:
           在什么周期onActivity()中,实例化得到MainActivity activity=(MainActivity)getActivity();
 
3、碎片中使用其他碎片中的控件:
MainActivity activity=(MainActivity)getActivity();
Fragment2 fragment2=(Fragment2)activity.getFragmentManager().findFragmentById(R.id.fragment2);
2 0
原创粉丝点击