小猪Android越来越方式 Day 5 - part 2
Activity片段:Fragment(碎片)
------转载请注明出处:coder-pig
本节引言:
在part 1中我们对android的基本单元Activity进行了具体的解析,而在part 2中我们将会解说
Activity片段:Fragment(碎片),一開始是为了简化大屏幕手机或者平板电脑的UI设计,可是如今也普遍用于
普通手机,比方Fragment + slideMenu实现側滑效果,在网上有非常多相关的样例,掌握了Fragment的基本使用方法
能够更加easy地去理解使用Fragment实现的一些效果的代码!
好了,直接開始本节内容吧。
本节学习路线图:
正文:
Fragment的概述与生命周期图:
创建Fragment的流程
①静态载入Fragment:
代码演示样例:
将Activity划分为两个Fragment
效果图例如以下:
比較简单,代码就不一一列出了,有须要的自己下载吧:參考代码下载
ps:Fragment的子类有:
对话框:DialogFragment 列表:ListFragment
选项设置:PreferenceFragment WebView界面:WebViewFragment
②动态载入Fragment
代码演示样例:切换横竖时替换Fragment
就是当我们切换横竖屏时载入不同的fragment,我们把动态载入fragment的方法写在Activity的onCreate()方法中
当我们切换横竖屏时,Activity就会被销毁,然后从新载入!
代码也非常easy,要的自己下载吧:代码下载
Fragment与Activity的交互
Fragment管理与Fragment事务
代码演示样例:点击左边的列表项,右面显示出对应的具体信息:
效果图例如以下:
竖屏时:
横屏时:
这个代码对于新手来说有点难理解:只是已经算是比較简单的样例了,对照起側滑来说:
要自己琢磨琢磨!參考代码下载: 代码下载
注意:
①在ListFragment.java用到一个savedInstanceState的属性,以及重写了
onSaveInstanceState()方法;当一个Activity结束前,假设须要保存状态,
我么能够在onsaveInstanceState中,将状态数据以key-value的形式放入
到savedInstanceState中。
这样,当一个Activity被创建时,
就能从onCreate的參数savedInsanceState中获得状态数据。
②代码中创建了一个layout_land的目录,相信非常多朋友都在找这个布局什么时候载入的
可是找来找去还是找不到是吧!事实上这个是默认载入的;假设我们的app想要支持横屏,会取
同名的layout_land目录下;相同竖屏的话layout_port,layout的话就是默认了!
③假设认为上述的样例难以理解或者枯燥无味,能够看下大牛郭大叔的一个非常好的样例:
使用Fragment实现Tabhost的效果:传送门
---谢谢某读者的热心提醒!
ps:Fragment的基础部分临时就讲这么多,Fragment是android UI开发中非常重要的一环,
以后会结合着实例进行解说!兴许还会有深入讲的课程!
谢谢\(^o^)/
版权声明:本文博客原创文章。博客,未经同意,不得转载。