Fragment是Android系统中的一个重要组件,它代表Activity中的一部分用户界面或行为。可以将Fragment视为“子activity”,它拥有自己的生命周期,并接收自己的输入事件,而且你可以在Activity中添加或删除Fragment。
以下是关于Android Fragment原理和使用方法的简单解析:
原理:
- 生命周期管理:Fragment有其独立的生命周期,它与包含它的Activity密切相关。例如,当Activity暂停时,所有在其中的Fragments也会被暂停。此外,在保存Activity状态之前也会保存Fragments状态。
- 模块化UI组件:你可以通过将UI组件封装在不同Fragments中来实现UI模块化,并根据屏幕方向、屏幕大小等因素动态地调整和重新组合这些Fragments。
- 与后退堆栈交互:你可以把fragment事务添加到后退堆栈(back stack)中。这样用户就能通过按"后退"按钮来撤消fragment事务(如替换fragment等操作)。
使用方法:
- 创建一个Fragment类: 创建一个新类并继承
android.app.Fragment或者androidx.fragment.app.Fragment类, 并实现必要方法, 如onCreateView(). - 定义布局文件: 为该Fragment定义布局文件, 这个布局文件通常会在上述提到的
onCreateView()方法里面被加载. - 在 Activity 中使用: 在 Activity 的 layout xml 文件或者代码里面插入该 Fragment 或者动态地通过 FragmentManager 和 FragmentTransaction 添加、替换、移除等操作.
- 响应用户交互: 在 fragment 的代码里响应 UI 控件(如按钮)触发事件处理逻辑。
- 与 Activity 通信: 如果需要, 可以让 fragment 通过回调接口方式与其所依附 activity 进行通信.
具体详情分析可参考下面链接 juejin.cn/post/684490…