跟我学Android UI高级之十五碎片Fragment

视频课:https://edu.csdn.net/course/play/7621

本章内容


Fragment介绍

创建Fragment

替换和移除Fragment

Fragment与activity通信


      Android在3.0中引入了Fragments的概念,主要的目的是用在大屏幕的设备,例如平板电脑,支持更加动态和灵活的UI设计。平板电脑的屏幕比手机大得多,有更多的空间来放更多的UI组件,并且这些组件之间会产生更多的交互。

Fragment可以作为Activity界面的一部分组成出现。

可以在一个Activity中同时出现多个Fragment,并且一个Fragment也可以在多个Activity中使用。在Activity运行过程中,可以添加、移除或替换Fragment,

Fragment可以响应自己的输入事件,并且有自己的生命周期,他们的生命周期会受宿主Activity的生命周期影响


Fragment生命周期回调方法:

onAttach(Activity)

          当Fragment与Activity发生关联时调用

onCreateView(LayoutInflater, ViewGroup,Bundle)

         创建该Fragment的视图

onActivityCreated(Bundle)

         当Activity的onCreate方法返回时调用

onDestoryView()

        与onCreateView想对应,当该Fragment的视图被移除时调用

onDetach()

       与onAttach相对应,当Fragment与Activity关联被取消时调用



做Demo的问题,

android.support.v4.app.Fragment和android.app.Fragment区别

1.最低支持版本不同

Android.app.Fragment 兼容的最低版本是android:minSdkVersion="11" 即3.0版

android.support.v4.app.Fragment 兼容的最低版本是android:minSdkVersion="4" 即1.6版

2.需要导jar包

fragment android.support.v4.app.Fragment 需要引入包android-support-v4.jar


3.在Activity中取的方法不同

android.app.Fragment使用 (ListFragment)getFragmentManager().findFragmentById(R.id.userList)  获得  ,继承Activity


android.support.v4.app.Fragment使用 (ListFragment)getSupportFragmentManager().findFragmentById(R.id.userList) 获得 ,需要继承android.support.v4.app.FragmentActivity.

--------------------------------------------------------------------------------------------------------------------------------------------------------

动态添加碎片的步骤:

1.创建待添加的碎片对象;

2.获取FragmentManager的对象,使用getFragmentManager()方法得到;

3.开启一个事务,通过调用beginTransaction()方法开启.

4.向容器内加入碎片,一般使用replace()方法开启,需要传入容器的id和待添加的碎片对象;

5.提交事务,调用commit()方法来完成。

在碎片中模拟返回栈,注意方法:addToBackStack(null);


猜你喜欢

转载自blog.51cto.com/2096101/2588795