安卓基础组件024-fagment

文章目录

概念

把一个activity划分成多个区域。有独立的生命周期

比如 我们有导航栏,每个按钮代表了一个页面。

这时候,每个导航栏底部按钮的页面就是i一个fragment

导包

导入 androidx 的包

生命周期

onAttach fragment和activity建立关联的时候调用
onCreate 创建fragment的时候使用,初始化不依赖UI的操纵
onCreateView 创建并返回 fragment 的视图层次结构

onViewCreated 视图创建完成后调用,进行与视图相关的初始化

onStart fragment对用户可见

onResume 和用户交互时调用

opPause 失去焦点但部分仍可见时调用

onStop 完全不可见时调用

onDestroyView 视图被销毁时调用

onDestroy 被销毁时调用

onDetach 解除关联时调用

创建fragment

右键可以直接创建 Fragment,自动生成一个类。

里面有生命周期函数,以及各种注释之类的。

只留下一个 onCreateView 的函数

在这个函数里面通过 fragment 调用,来显示不同的页面

xml

这个XML是首页的XML,然后里面添加 fragment的标签,

然后在代码里面显示指定的xml

隐藏显示 fragment

需要调用show 以及 hide 方法,不然之前的切换会销毁,要显示在创建新的

切换步骤

首先 获取 fragmentManager

第二 在开启事务 fm.beginTranscation

第三判断是否添加过

第四隐藏当前的 fragment

第五显示目标的fragment

当前显示的fragment赋值给当前的currentgragment

第六 提交事务

相关推荐
ljt27249606612 小时前
Compose笔记(五十一)--rememberTextMeasurer
android·笔记·android jetpack
阿蓝8583 小时前
Android代码架构
android
ZFJ_张福杰9 小时前
【Flutter】GetX最佳实践与避坑指南
android·flutter·ios·getx
一直向钱16 小时前
android 基于okhttp的socket封装
android·okhttp
夜晚中的人海17 小时前
【C++】异常介绍
android·java·c++
蜀中廖化21 小时前
Android Studio 导入 opencv
android·opencv·android studio
奋斗的小鹰1 天前
ASM Bytecode Viewer 插件查看kotlin和java文件的字节码
android·kotlin·asm
欢喜躲在眉梢里1 天前
mysql中的日志
android·运维·数据库·mysql·adb·日志·mysql日志
路上^_^1 天前
安卓基础组件019-引导页布局001
android·安卓