当前课程知识点:Android应用开发基础 > 第四章 Android Fragment > 4.1 Fragment碎片组件 > 4.1.3 Fragment动态加载
本节我们介绍Fragment的动态加载
在上一个新闻应用中
其中TitleFragment标题碎片
和ContentFragment内容碎片
在主视图布局中已固定
布局与碎片在布局的时候已一一对应
主视图在加载Fragment碎片的过程中
根据android.name的属性
碎片类的名字生成碎片实例
这种方式我们称为碎片的静态加载
对于程序App主界面的常用例子
如图所示
App下方有四个功能键
点击不同的功能
希望能加载不同的碎片
如果使用静态加载
上面的主视图布局只能加载一个碎片
不能实现动态切换的功能
这种情况下需要使用动态加载的功能
页面1到页面4是四个不同的Fragment
根据功能键进行切换的时候
主视图动态加载对应的碎片进行切换
Frament的动态加载的代码如下图
首先
在主视图布局文件中
增加一个FrameLayout的组件
这是Android中最简单的一种布局
它没有任何的定位方式
所有的控件都会摆放在布局的左上角
FrameLayout布局可以包含多个Fragment
并根据要求
动态加载指定的Fragment
主视图的整体结构如图所示
增加碎片1到Fragment4的碎片布局
布局中只有一个TextView
分别设置文本为页面1到页面4
主视图实现碎片动态加载的代码
如下图所示
增加一个replaceFragment方法
其中有两个参数
第一个参数int layout
代表主视图中的FrameLayout的资源ID
第二个Fragment fragment
代表需要显示的碎片实例
动态加载的流程如下
首先
使用系统的getSupportFragmentManager()
获取碎片的管理器
第二
使用碎片管理器的beginTransaction
获取事务管理
第三
使用事务管理的replace方法
替换当前的碎片视图
第四
使用事务管理的addToBackStack方法
将碎片加入碎片栈
第五
使用事务管理的commit方法
将此次碎片操作提交给主视图Activity
主视图包含有4个按钮
根据视图的getId方法
可以判断是哪一个按钮被按下
按钮被按下之后
调用replaceFragment方法
将要显示的视图对象 传入方法
可以实现碎片的动态加载和切换
这就是碎片动态加载的全部过程
-Android Studio4.1.2安装常用问题汇总2021.3.15
-1.1 Android概述
--1.1 Android Studio安装与配置-实践案例
-1.1 Android概述--作业
-1.2 Android程序
-1.2 Android程序--作业
-1.3 Android程序调试
-1.3 Android程序调试--作业
-2.1 Activity概述
-2.1 Activity概述--作业
-2.2 Activity应用
-第2章 Android视图--2.2 Activity应用
-3.1 Activity布局
-3.1 Activity布局--作业
-3.2 Android基础组件
-3.2 Android基础组件--作业
-3.3 Android中级组件
-3.3 Android中级组件--作业
-3.4 Android适配器
-3.4 Android适配器--作业
-4.1 Fragment碎片组件
-4.1 Fragment碎片组件--作业
-4.2 ViewPager翻页类组件
-4.2 ViewPager翻页类组件--作业
-讨论:fragment与activity的生命周期有哪些不同?
-5.1 Android广播概述
-5.1 Android广播概述--作业
-5.2 Android广播工作原理
-5.2 Android广播工作原理--作业
-5.3 自定义广播
-第5章 广播--5.3 自定义广播
-5.4 有序广播
--5.4有序广播
-第5章 广播--5.4 有序广播
-6.1 系统服务概述
-6.1 系统服务概述--作业
-6.2 访问系统服务
-6.2 访问系统服务--作业
-6.3 自定义服务
-第6章 Android服务--6.3 自定义服务
-6.4 多线程
--6.4 多线程
-第6章 Android服务--6.4 多线程
-7.1 Android运行权限
-7.1 Android运行权限--作业
-7.2 URL URI概述
-第7章 内容提供者ContentProvider--7.2 URL URI概述
-7.3 ContentProvider概述
-第7章 内容提供者ContentProvider--7.3 ContentProvider概述
-7.4 访问通讯录
-第7章 内容提供者ContentProvider--7.4 访问通讯录
-7.5 课后作业案例
-8.1 相机服务
--8.1 相机服务
-8.1 相机服务--作业
-8.2 音视频服务
-8.2 音视频服务--作业
-9.1 网络服务概述
-9.1 网络服务概述--作业
-9.2 网络框架
--9.2 网络框架
-9.2 网络框架--作业
-9.3 Json
--9.3 Json
-第9章 网络技术--9.3 Json
-9.4 Volley
-第9章 网络技术--9.4 Volley
-10.1 文件存储
--10.1.3 实践案例-SharedPreference文件读写
-10.1 文件存储--作业
-10.2 数据库存储
-10.2 数据库存储--作业
-第1章 实训简介以及开发环境配置
-第2章 在线音乐播放器整体设计以及服务端开发
-第3章 在线音乐播放器-客户端开发
-第4章 在线音乐播放器-完整版
-第5章 QQ聊天项目
-第6章 在线点餐系统