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

第六 提交事务

相关推荐
xxjj998a1 小时前
Laravel 1.x:PHP框架的原始魅力
android·php·laravel
formula100001 小时前
在iOS/安卓上远程连接任何 Agent!Claude、Codex、Copilot、Gemini、OpenCode 等
android·copilot
该用户可能存在1 小时前
Blbl-android 更新至 v0.1.24,体验更流畅、更稳定
android·哔哩哔哩·电视app·androidtv·bbll·blbl·bilibilitv
lKWO OMET2 小时前
mysql之字符串函数
android·数据库·mysql
liang_jy12 小时前
Android SparseArray
android·源码
liang_jy13 小时前
Activity 启动流程扩展篇(一)—— startActivityInner 任务决策全解析
android·源码
NPE~14 小时前
[App逆向]脱壳实战
android·教程·逆向·android逆向·逆向分析
木易 士心14 小时前
别再只会用 drawCircle 了!一文搞懂 Android Canvas 底层机制
android
AtOR CUES15 小时前
MySQL——表操作及查询
android·mysql·adb
怣疯knight16 小时前
安卓App无法增加自定义图片作为图标功能
android