«

Fragment学习笔记

时间:2024-3-2 18:21     作者:韩俊     分类: Android


Android 3.0开始以后引入Fragment最初的目的不仅是可以使布局共享,而且还可以将相应的控制代码(主要是Java代码)封装起来,这样可以实现高度的复用,而且不至于造成混乱。


Fragment的初始化方法是onCreateView,在该方法中装载Fragment使用的视图对象。



Fragment的生命周期:


值得说的是以下几个方法:

1、onInflate方法

方法原型如下:public void oninflate(Activity activity,AttributeSet attrs,Bundle savedInstanceState)

该方法会在onAttach前调用,也就是在Fragment装载之前调用。


2、onArrach方法

方法原型如下:public void onAttach(Activity activity)

从该方法开始,就可以通过Fragment.getActivity方法获取与Fragment关联的窗口对象了,但在该方法中仍然无法操作Fragment中的控件。


3、onCreateView方法

方法原型如下:public View onCreateView(LayoutInflater inflater, ViewGroup container,

Bundle savedInstanceState)

onCreateView方法是Fragment生命周期方法中最重要的一个,因为在该方法中会创建在Fragment中显示的View,其中inflater参数用来装载布局文件。


Fragment的创建:

两种种创建方式,XML布局文件创建Fragment,Java代码创建Fragment,(静态创建和动态创建)。初此之外,Fragment还支持没有UI的形式。


动态创建Fragment的过程涉及到两个重要的类:FragmentManger和FragmenTransaction。

FragmentManger用于管理Fragment,FragmentTransaction用于对Fragment执行具体操作。


Fragment与Activity通信:

1、Fragment可以通过getActivity()方法获取它所在的Activty。

2、Activity可以调用FragmentManger的findFragmentById()方法或findFragmentByTag()方法获取Fragment。


下面是参考源码,仅供学习使用。参考源码

标签: android

热门推荐