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

第六 提交事务

相关推荐
mygljx10 小时前
MySQL 数据库连接池爆满问题排查与解决
android·数据库·mysql
xinhuanjieyi12 小时前
ruoyimate导入sql\antflow\bpm_init_db.sql报错
android·数据库·sql
闲猫13 小时前
基于RABC的权限控制设计
android
星霜笔记16 小时前
GitMob — 手机端 GitHub 管理工具
android·kotlin·github·android jetpack
LiuYaoheng16 小时前
问题记录:Android Studio Low memory
android·ide·android studio
独隅17 小时前
Python 标准库 (Standard Library) 全面使用指南
android·开发语言·python
always_TT17 小时前
strlen、strcpy、strcat等常用字符串函数
android
qqty121717 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
2401_8955213417 小时前
MySQL中between and的基本用法
android·数据库·mysql
云云鬼才18 小时前
CoCo编辑器、图形化编程怎么调用Scheme(跳转应用)
android