碎碎恋之懒加载和预加载

news2024/11/13 9:37:43

目录

    • 0 前言
    • 1 fragment复习
      • 1.1 静态创建
      • 1.2 动态创建
      • 1.3 两者生命周期
      • 1.4 fragment之间的通信

0 前言

懒加载,延迟加载;如kotlin中初始化;减小资源消耗,可以避免同一时间需要加载的内容过多。
预加载,提前加载;如recyclerView预加载。

  • 以fragment和viewPager举例,当我们左右滑动时,一定有预加载,左右页面进行缓存或销毁,保存在arrayList里面。可设置值,最少加载1。
  • viewPager2提供了懒加载;此时预加载的是空白页面,滑动到了要到达的页面才加载数据更新ui。

可见的时候加载数据,不可见的时候停止加载。

1 fragment复习

前置条件:fragment都需要依附与activity中。

1.1 静态创建

思路: 在activity的xml中加fragment标签作为容器,name或class属性找绑定的fragment类。

1.2 动态创建

  • 在activity的xml中加fragment标签作为容器,但不是直接加标签绑定。
  • 使用使用fragmentManager创建transaction,调用transaction的添加或者替换方法,最后调用commit方法完成fragment加载,利用容器资源作为标志位,设置所要显示的位置。这块代码可以放到activity创建的时候初始化。
    第二步类似于数据库一次事务的提交。

1.3 两者生命周期

Android生命周期
静态:fragment先创建;再是activity创建。
动态:activity先创建,再fragment
在这里插入图片描述
这是现在官网的图,已经没有onActivityCreated了;
onCreateView(),正在创建view;
onViewCreated(),已经创建完毕了,可以在这里绑定页面控件;

1.4 fragment之间的通信

  • 在Fragment中调用Activity方法:getActivity方法会获得Activity对象
  • 在Activity中调用Fragment方法:通过接口回调
  • Fragment中调用Fragment方法:getActivity 获取到Activity,findFragmentById 获取Fragment
  • Activity在创建的时候通过Bundle传输数据
  • viewmodel

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2095680.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

经典大语言模型解读(2):生成式预训练的先锋GPT-1

论文地址:Improving Language Understanding by Generative Pre-Training 概述 现实世界中包含了大量的文本语料数据,然而,绝大多数语料都是无标签的。 为了充分利用这些无标签语料库,GPT1.0提出直接利用这些未标记的语料来进行…

【BLE】三.GATT/ATT规范

基本概念回顾 CS交互流程 SPP(蓝牙透传)的示例初始化: SPP示例运行过程: GATTS&GAP回调: 黄色:事件回调 绿色:事件 蓝色:执行 GATTC&GAP回调: 服务特征…

安全入门day.04

一、密码存储加密知识点 1、MD5 MD5加密是一种广泛使用的密码杂凑函数,它可以将任意长度的信息通过一系列复杂的数学和位操作转化为一个128位(16字节)的散列值(hash value),这个散列值通常被表示为一个32位…

【Qt】工具栏

工具栏 工具栏是应用程序中集成各种功能实现快捷键使用的一个区域。 在Qt中使用QToolBar表示工具栏对象,一个窗口可以有多个工具栏,也可以没有,工具栏也是可以进行手动移动位置。 例子:创建工具栏 (1)创…

信息系统运维服务方案(Word原件完整版)

1 编制目的 2 系统运行维护 2.1 系统运维内容 2.2 日常运行维护方案 2.2.1 日常巡检 2.2.2 状态监控 2.2.3 系统优化 2.2.4 软件系统问题处理及升级 2.2.5 系统数据库管理维护 2.2.6 灾难恢复 2.3 应急运行维护方案 2.3.1 启动应急流程 2.3.2 成立应急小组 2.3.3 …

【hot100篇-python刷题记录】【轮转数组】

R7-数组篇 思路: 印象题,我记得可以使用python切片拼接 python切片 要轮转k个位置,那从第k个下标开始切片,然后拼接[0,k) class Solution:def rotate(self, nums: List[int], k: int) -> None:"""Do not re…

云计算第二阶段---DBA Day8-Day9

DBA Day8 该阶段的2天内容,都会和数据库中间件,集群配置有关. 什么是中间件? 通俗来说,就是在正式文件内容从客户端发送或获取请求时,在传播过程中地点中间商,负责管理请求,并对其进行分类。 环境准备: 准备…

【入门教程】基于深度学习的遥感图像分割流程(附代码)

本文为入门遥感图像分割的朋友提供一份详细教程,看完你将收获: 大致了解图像分割的基本流程能够独立完成从拿到数据集到完成分割结果并评估的任务 有任何问题欢迎关注or私信,看到即回复,文末附代码链接。 文章目录 0.引言1.数据…

农事管理系统

摘 要 使用旧方法对农事管理系统的信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在农事管理系统的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。这次开发的农事管理系…

2-83 基于matlab的自适应正则化核的模糊均值聚类框架(ARKFCM)

基于matlab的自适应正则化核的模糊均值聚类框架(ARKFCM),用于脑磁共振图像的分割。该框架采用三种算法,分别平均滤波器、中值滤波器和设计的加权图像的灰度来代替局部平均灰度。利用邻域中灰度的异质性获取局部信息,并用高斯径向基核函数替换…

【#第三期实战营闯关作业 ## MindSearch在 Hugging FaceSpace的部署】

把MindSearch 部署到Github Codespace后,下一步就是上传到 Hugging Face Space,以下是记录了实操的过程及截图: 打开 https://huggingface.co/spaces ,并点击 Create new Space,如下图所示:在输入 Space name 并选择 …

数据仓库系列18:如何建立一个有效的元数据管理体系?

目录 什么是元数据?为什么它如此重要?元数据管理体系的核心组件如何设计元数据模型步骤1: 识别关键元数据类型步骤2: 定义元数据属性步骤3: 建立元数据之间的关系步骤4: 选择合适的建模方法示例: 使用关系模型设计元数据模型最佳实践 元数据采集策略1. 识别元数据来源2. 自动…

正则表达式pattern

String qq "1234567890" qq.matches("[1-9]\\d{5,19}") [1-9]第一位不等于零 \\d都是数字 {5,19}后面的5到19位。 正则表达式的作用 作用1:校验字符串是否满足规则 作用2:在一段文本中查找满足要求的内容 sout("\"…

Cesium 地球云图

Cesium 地球云图 使用自定义图原(Primitive)实现。 支持速度和透明的动态调整。 支持设置云图高度, 当相机高度小于云图高度时, 渐隐消失。 Cesium 地球云图

Qt-初始Qt

1. Qt背景介绍 1.1 什么是Qt Qt是⼀个跨平台的C图形⽤⼾界⾯应⽤程序框架。它为应⽤程序开发者提供了建⽴艺术级图形界⾯所需的所有功能。它是完全⾯向对象的,很容易扩展。Qt为开发者提供了⼀种基于组件的开发模式,开发者可以通过简单的拖拽和组合来实现…

003.精读《MapReduce: Simplified Data Processing on Large Clusters》

文章目录 1. 引言:2. 精读2.1 背景2.2 模型应用2.3 基本原理2.4 其他 3. 总结 1. 引言: 在本期的精读会中,我们将深入探讨一篇具有里程碑意义的论文——《MapReduce: Simplified Data Processing on Large Clusters》。这篇论文不仅奠定了大…

【AI音频处理】:重塑声音世界的无限可能

欢迎来到 破晓的历程的 博客 ⛺️不负时光,不负己✈️ 文章目录 引言一、语音识别:人机交互的新篇章二、语音合成:让机器“说话”的艺术三、音乐创作与推荐:AI赋予音乐新生命四、声音效果处理:让声音更加完美五、AI在…

浅谈维度建模、数据分析模型,何为数据仓库,与数据库的区别

往期推荐 大数据HBase图文简介-CSDN博客 数仓分层ODS、DWD、DWM、DWS、DIM、DM、ADS-CSDN博客 数仓常见名词解析和名词之间的关系-CSDN博客 数仓架构:离线数仓、实时数仓Lambda和Kappa、湖仓一体数据湖-CSDN博客 0. 前言 1991年,数据仓库之父 比尔恩门 著…

【C++ | 设计模式】代理模式的详解与实现

1. 概念 代理模式(Proxy Pattern)是一种结构型设计模式,用于控制对对象的访问。它通过引入代理对象,间接地操作目标对象,从而实现对目标对象的控制。代理模式的核心思想是通过代理对象来控制对目标对象的访问。代理对…

坐标系的那些事儿

哈喽,大家好!地理坐标系、投影坐标系等知识是地图学、GIS和地图发布、应用等绕不开的话题,今天我们一起聊一聊坐标系的那些事儿! 1.地理坐标系 为了确定地面点在地球椭球体表面位置而定义的空间参考系,主要用经纬度来…