Android Fragment开发指南:继承关系、生命周期和应用
需积分: 3 47 浏览量
更新于2024-07-25
1
收藏 35KB DOCX 举报
"Fragment开发文档"
Fragment是Android中的一种基本组件,用于构建应用程序的用户界面或行为的一个片段。它可以被放置在一个Activity中,并通过FragmentManager对象来实现与Fragment对象的交互。Fragment类有着广泛的应用,它的核心是代表了一个正在较大的Activity中运行的特俗的操作或界面。
继承关系:Fragment继承自java.lang.Object,并实现了ComponentCallbacks2和View.OnCreateContextMenuListener接口。它的引入版本是APILevel11,已知的子类包括DialogFragment、ListFragment、PreferenceFragment、WebViewFragment等。
Fragment类概要:Fragment是一个应用程序的用户界面或行为的一个片段,它能够被放置在一个Activity中。通过FragmentManager对象来实现与Fragment对象的交互,能够通过Activity.getFragmentManager()方法和Fragment.getFragmentManager()方法来获取FragmentManager对象。Fragment对象跟它所依附的Activity对象是紧密相关的,并且不能被分开使用。
生命周期:尽管Fragment对象的生命周期要依附于它所在的Activity对象,但是它也有自己标准的活动周期。它包含了基本的活动周期方法,如onResume(),但是同时也包含了与Activity和UI交互相关的重要方法。当Fragment对象被关联到Activity对象时,会调用onAttach()方法;当Fragment对象被创建时,会调用onCreate()方法;当Fragment对象的UI被创建时,会调用onCreateView()方法;当Fragment对象被启动时,会调用onStart()方法;当Fragment对象被恢复时,会调用onResume()方法。
Fragment的生命周期方法:
* onAttach():当Fragment对象被关联到Activity对象时调用。
* onCreate():当Fragment对象被创建时调用。
* onCreateView():当Fragment对象的UI被创建时调用。
* onActivityCreated():当Fragment对象的Activity被创建时调用。
* onStart():当Fragment对象被启动时调用。
* onResume():当Fragment对象被恢复时调用。
* onPause():当Fragment对象被暂停时调用。
* onStop():当Fragment对象被停止时调用。
* onDestroyView():当Fragment对象的UI被销毁时调用。
* onDestroy():当Fragment对象被销毁时调用。
* onDetach():当Fragment对象被从Activity对象中分离时调用。
在较旧的平台上使用Fragment API:尽管FragmentAPI是在HONEYCOMB版本中被引入的,但是通过FragmentActivity也能够在较旧的平台上使用该API。
空的构造器:所有的Fragment子类都必须包含一个公共的空的构造器。在需要的时候,Framework会经常重新实例化Fragment类,在特殊的状态恢复期间,需要能够找到这个构造器来实例化Fragment类。如果空的构造器无效,那么在状态恢复期间会导致运行时异常发生。
Fragment是Android中的一种基本组件,用于构建应用程序的用户界面或行为的一个片段。它可以被放置在一个Activity中,并通过FragmentManager对象来实现与Fragment对象的交互。Fragment类有着广泛的应用,它的核心是代表了一个正在较大的Activity中运行的特俗的操作或界面。
2013-08-26 上传
2017-11-18 上传
2015-11-16 上传
2023-05-17 上传
2023-07-17 上传
2023-04-20 上传
2023-05-26 上传
2023-06-09 上传
2023-04-20 上传
qeqeqe236
- 粉丝: 97
- 资源: 96
最新资源
- 磁性吸附笔筒设计创新,行业文档精选
- Java Swing实现的俄罗斯方块游戏代码分享
- 骨折生长的二维与三维模型比较分析
- 水彩花卉与羽毛无缝背景矢量素材
- 设计一种高效的袋料分离装置
- 探索4.20图包.zip的奥秘
- RabbitMQ 3.7.x延时消息交换插件安装与操作指南
- 解决NLTK下载停用词失败的问题
- 多系统平台的并行处理技术研究
- Jekyll项目实战:网页设计作业的入门练习
- discord.js v13按钮分页包实现教程与应用
- SpringBoot与Uniapp结合开发短视频APP实战教程
- Tensorflow学习笔记深度解析:人工智能实践指南
- 无服务器部署管理器:防止错误部署AWS帐户
- 医疗图标矢量素材合集:扁平风格16图标(PNG/EPS/PSD)
- 人工智能基础课程汇报PPT模板下载