- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Fragment
PAGE 0
[文档标题
目 录
TOC \o 1-3 \h \z \u 一、 Fragment概述 1
二、 创建Fragment 2
三、 Fragment的生命周期 9
四、 Fragment与Activity通信 16
Fragment特点
本课程讲述关于Fragment的概述,如何创建Fragment,Fragment的生命周期及Fragment与Activity通信。
Fragment概述
Fragment(碎片)是Android honeycomb 3.0新增的概念,Fragment代表用户界面中一个活动的部分或者是一种行为能力,它可以有自己单独的用户界面,也可以单独接收用户输入和处理事件消息。
在原来的设计理念中,手机的屏幕是比较小的,整个屏幕作为一个整体出现,应用程序运行过程就是在多个屏幕之间切换的过程。但是随着平板电脑的出现,这一切都随之改变。单个应用界面不一定占据整个屏幕。而且单个界面包含的内容更加丰富,许多时候仅仅需要更新界面的局部,而不是切换整个界面。因此,代表应用界面局部区域,并能单独与用户进行交互的组件Fragment应运而生。下面举个例子,更好的理解Fragment出现的意义。
例如:设计一个读新闻的程序,可以用一个Fragment显示标题列表,另一个Fragment显示选中标题的内容,这两个Fragment都在一个Activity上,并排显示。那么这两个Fragment都有自己的生命周期并响应自身感兴趣的事件。于是,不需再像手机上那样用一个Activity显示标题列表,用另一个Activity显示新闻内容。现在有了Fragment可以把两者放在一个Activity上同时显示出来。如图1所示。
图1 手机显示的Fragment
由此可以看出,使用Fragment可以让用户更加充分地利用平板的屏幕空间。
创建Fragment
Fragment是Android3.0以上才引入的新事物,如果用户想兼容3.0以下的版本,那么就要使用v4包。Fragment默认的包为android.app.FragmentManager,如果要兼容3.0下版本就需要引入 android.support.v4.app.Fragment包,这两个包对Fragment相同方法的定义有所不同,因此在import时,经常容易混淆导致程序报错,有些事项在使用前需要了解如下:
最低支持版本不同:
android.app.Fragment 兼容的最低版本是android:minSdkVersion=11 即3.0版。
android.support.v4.app.Fragment 兼容的最低版本是android:minSdkVersion=4 即1.6版。
需要导jar包: android.support.v4.app.Fragment 需要引入包android-support-v4.jar
如果在Activity中要使用android.app.Fragment,需要满足两个条件:
当前的Activity直接继承Activity
在方法中使用getFragmentManager().findFragmentById(XXX)获取Fragment对象
support.v4包中的方法一般都会加上support.,例如获取fragmentManager,就需要getSupportFragmentManager,而app包中的直接getFragmentManager即可。
创建一个MyFirstFragemt事例,应该继承Fragment或者其子类,覆写相应的方法。Fragment有两类,一类是具有UI界面的,Fragment作为ViewGroup组件的节点增加到当前的Activity界面;另一类是没有UI界面的,它可能只是作为后台的一个工作线程。这里创建的Fragment有用户界面,因此首先要声明一个用户界面。
文件:first_fragment.xml
LinearLayout xmlns:android=/apk/res/android
android:layout_width=fill_parent
android:layout_height=fill_parent
android:orientation=vertical
TextView
android:id=@+id/textView1
android:layout_width=wrap_content
您可能关注的文档
- 移动WEB应用技术综合实训-2017 2、项目的主要功能说明 电子教材:项目功能说明.docx
- 移动互联工程实训-2017 OkHttpHelper类基础封装 单元教教学设计- OkHttpHelper类基础封装.doc
- 移动互联工程实训-2017 首页功能重构 单元教教学设计- 首页功能重构.doc
- 移动互联软件测试-2017 DataTable实现脚本参数化 DataTable实现脚本参数化-说课稿.docx
- 移动互联软件测试-2017 QuickTestProfessional介绍 QTP介绍-说课稿.docx
- 移动互联软件测试-2017 spy组件的使用 Spy组件的使用-说课稿.docx
- 移动互联软件测试-2017 测试对象模型 测试对象模型-说课稿.docx
- 移动互联软件测试-2017 测试用例属性 测试用例的执行顺序.docx
- 移动互联软件测试-2017 测试总结主要内容 测试总结报告的内容.docx
- 移动互联软件测试-2017 错误猜测法 错误推测法-说课稿.docx
文档评论(0)