=======================================================================
1.Fragment (碎片)是一种可以嵌入Activity中的UI片段,与Activity非常相似,不仅包含布局,同时也具有自己的生命周期。Fragment 是专门针对大屏幕移动设备而推出的,它能让程序更加合理地利用屏幕空间,因此在平板电脑上应用广泛。
2.Fragment不能独立存在,必须嵌入到Activity中使用,
因此Fragment的生命周期直接受所在的Actity影响。当Activity暂停时,它拥有的所有Fragment都暂停;当Activity销毁时,它拥有的所有Fragment都被销毁。然而,当Activity运行时(在onResume()之后,onPause()之前),却可以单独地操作每个Fragment,如添加或删除Fragment等。
二、Fragment的创建
========================================================================
Fragment的创建过程非常简单,只需在程序包名处单击鼠标右键,选择[ New ]→[ Fragment ]→[ Fragment(Blank)],进入Customize the Activity界面,在该界面指定Fragment名称,以及Fragment对应的布局名称,如下图1.1所示。
在图1.1界面中有3个可选项,其中,“Create layout XML"用于设置是否在创建Fragment的同时创建对应的布局文件,“Include fragment factory methods?” 用于设置是否为Fragment创建工厂方法,“Include interface callbacks?"用于设置是否为Fragment创建回调接口,后两个选项通常不需要勾选。
在Activity中使用Fragment时,可以通过两种方式将Fragment添加到Activity中,一种是通过布局文件添加,一种是通过代码动态添加,接下来我们将使用前者。
三、代码实战
=================================================================
接下来将基于NotePad应用做功能扩展(源码地址:https://github.com/llfjfz/NotePad)
1、创建程序
在main.xml布局文件中添加ViewPager控件用于展示Fragment,需要注意的是,项目中要使用android.support.v4.view.ViewPager包中的ViewPager控件,因此需要在标签中写出ViewPager的完整路径,具体代码如下所示。
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:orientation=“vertical”
android:layout_height=“match_parent”
android:layout_width=“match_parent”>
</android.support.v4.view.ViewPager>
2、创建三个Fragment
由于本案例需要实现在一个Activity中可以滑动切换3个Fragment界面的功能,因此需要创建3个Fragment。 默认创建3个Fragment, 分别命名为“Fragment1” “Fragment2”和“Fragment3",对应的布局文件分别命名为“fragment1"“fragment2"和"fragment3”。
需要注意的是,Fragment创建时默认导入的包为android.support.app.Fragment, 需要将其删除并修改为android.support.v4.app.Fragment。
图为在activity里import的Fragment包。
3、编写界面交互代码
接下来在工程中的NotesList中编写交互代码,通过ViewPager加载Fragment,并且实现滑动切换Fragment的效果,具体代码如下所示。
public class FragAdapter extends FragmentPagerAdapter{
public FragAdapter(FragmentManager fm,List fragments){
super(fm);
fragmentsList = fragments;
}
最后
现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水!
Android架构师之路很漫长,一起共勉吧!