安卓基础组件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

第六 提交事务

相关推荐
三少爷的鞋5 小时前
AI 时代,我们都将成为通才型开发者:只懂 Android,已经不够了
android
Dovis(誓平步青云)9 小时前
家里设备越来越多,如何用一张空间地图控制灯光和温度![
android·java·前端·javascript·人工智能·电脑
晚风叙码11 小时前
MySQL 数据类型详解:从数值到字符串,一篇讲透
android·mysql·adb
传奇开心果编程11 小时前
【Compose Multiplatform 跨端开发学与练】第3课 布局与组件
android·windows·学习·ui·ios·kotlin·composer
传奇开心果编程14 小时前
【Compose Multiplatform 跨端开发学与练】第8课 资源管理与主题
android·windows·学习·ios·kotlin·web·composer
传奇开心果编程16 小时前
【Compose Multiplatform 跨端开发学与练】第9课 测试与调试
android·学习·macos·ios·kotlin·web·composer
传奇开心果编程16 小时前
【Compose Multiplatform 跨端开发学与练】第4课 导航与路由
android·windows·学习·ui·ios·kotlin·composer
传奇开心果编程16 小时前
【Compose Multiplatform 跨端开发学与练】第6课 状态管理与架构
android·学习·ui·ios·架构·kotlin·composer
事圆则缓16 小时前
Android AOSP 定制常见概念:源码目录、系统镜像与刷机流程
android
传奇开心果编程16 小时前
【Compose Multiplatform 跨端开发学与练】第2课 Compose 基础语法
android·windows·学习·ui·ios·kotlin·composer