另外一种缓冲式图片组件的用法

文章目录

  • 1. 概念介绍
  • 2. 使用方法
    • 2.1 基本用法
    • 2.2 缓冲原理
  • 3. 示例代码
  • 4. 内容总结

我们在上一章回中介绍了"FadeInImage组件"相关的内容,本章回中将介绍CachedNetworkImage组件.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1. 概念介绍

我们在本章回中介绍的CachedNetworkImage组件主要用来缓冲和显示网络图片,这点从它的名字上就可以看出来,该组件可以确保图像能够快速、高效地加载,同时
又可以避免不必要的网络请求和资源浪费。该组件由cached_network_image这个三方包提供,它和官方提供的FadeInImage组件在功能上十分相似。我们本章回中
将详细介绍它的使用方法。

2. 使用方法

2.1 基本用法

和其它组件类似,CachedNetworkImage组件提供了相关的属性来控制自己,下面是该组件中常用的属性:

  • imageUrl:该属性主要用来控制被加载的网络图片,它的值是一个图片网址;
  • imageBuilder:该属性主要用来装饰被加载的图片,比如对图片进行缩放操作;
  • errorWidget:该属性主要用来控制显示的错误提示图标或者文字;
  • placeholder:该属性用来控制在加载网络图片之前显示的占位图片资源;
  • fit:该属性主要用来控制图片如何适应其父容器,这个是图片类组件中最常用的属性;
  • progressIndicatorBuilder:该属性用来显示图标加载进度,它是方法类型,进度值在方法参数中;

2.2 缓冲原理

CachedNetworkImage组件背后的缓冲原理是自己开发,它基于FlutterCacheManager组件实现。这两个组件都是一个名叫BaseFlow的组织(公司)提供。该组件的
缓冲原理:第一次运行时从网络下载图像,并将其缓存到本地。当下一次需要加载同一图像时,它会首先检查缓存中是否存在,如果存在,则直接从缓存中读取,这样就避
免了重复的网络请求和下载。我们在后面章回中将专门介绍FlutterCacheManager组件。

3. 示例代码

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux下多线程

在Linux下的底层里并没有多线程这个概念,取而代之的是轻量级进程的概念。应为在Llinu下内核下并没有TCB,而只有PCB。 线程是什么 在⼀个程序⾥的⼀个执⾏路线就叫做线程(thread)。更准确的定义是:线程是“⼀个进程内部 的控制序…

Win10/11 安装使用 Neo4j Community Edition

如果你下载的是 Neo4j Community Edition 的压缩包,意味着你需要手动解压并配置 Neo4j。以下是详细的使用步骤: 0. 下载压缩包 访问Neo4j官网,找到 Community Edition 版本并选择 4.x 或者 5.x 下载:https://neo4j.com/deployme…

PCB+SMT线上报价系统+PCB生产ERP系统自动化拼板模块升级

PCB生产ERP系统的智能拼版技术,是基于PCB前端报价系统获取到的用户或市场人员已录入系统的板子尺寸及set参数等,按照最优原则或利用率最大化原则自动进行计算并输出拼版样式图和板材利用率,提高工程人员效率,减少板材的浪费。覆铜…

Excel根据条件动态索引单元格范围

假如我是一个老板,下面有数不胜数的员工,我要检查他们每周的工作产出,列一个排行榜,提高员工积极性,毕竟多劳多得嘛。 每天去手动统计,未免显得不太聪明,我们可以利用公式来解决这个问题。 我们…

SpringBoot配置相关的内容

依赖Starter和Parent 查依赖坐标网站:Maven Repository: Search/Browse/Explorehttps://mvnrepository.com/ 设置配置文件 配置文件相关的配置 yml多个数据的书写 配置文件的读取

机器学习-37-对ML的思考之机器学习发展的三个阶段和驱动AI发展三驾马车的由来

文章目录 1 引言2 机器学习发展的三个阶段2.1 萌芽期(20世纪50年代)2.1.1 达特茅斯会议(人工智能诞生)2.1.2 机器学习名称的由来2.2 知识期(20世纪80年代)2.2.1 知识瓶颈问题2.2.2 机器学习顶级会议ICML2.2.3 Machine Learning创刊2.2.4 神经网络规则抽取2.3 算法期(20世纪90年…

使用win32com将ppt(x)文件转换为pdf文件

本文来记录下如何使用win32com将ppt(x)文件转换为pdf文件 文章目录 win32com概述win32com优缺点代码实例本文小结 win32com概述 Pywin32 是一个用于与 Microsoft Windows 操作系统交互的 Python 扩展模块,它提供了对多个 Windows API 的访问,包括对 Mic…

鸿蒙实战:页面跳转

文章目录 1. 实战概述2. 实现步骤2.1 创建项目2.2 准备图片素材2.3 编写首页代码2.4 创建第二个页面 3. 测试效果4. 实战总结 1. 实战概述 实战概述:本实战通过ArkUI框架,在鸿蒙系统上开发了一个简单的两页面应用。首页显示问候语和“下一页”按钮&…

uniapp微信小程序接入airkiss插件进行WIFI配网

本文可参考uniapp小程序插件 一.申请插件 微信公众平台设置页链接:微信公众平台 登录您的小程序微信公众平台,进入设置页,在第三方设置->插件管理->添加插件中申请AiThinkerAirkissforWXMini插件,申请的插件appId为【wx6…

django解决跨域问题

django解决跨域问题 第一步 查看自己的 django 依赖里面有没有 django-cors-headers 包 直接 cmd pin list第二步如果没有 在自己的 pycharm 里面安装 django-cors-headers 包 pip install django-cors-headers第三步检查是否安装成功 查看自己的 django-cors-headers 安…

【51单片机】LCD1602液晶显示屏

学习使用的开发板:STC89C52RC/LE52RC 编程软件:Keil5 烧录软件:stc-isp 开发板实图: 文章目录 LCD1602存储结构时序结构 编码 —— 显示字符、数字 LCD1602 LCD1602(Liquid Crystal Display)液晶显示屏是…

【C++派生类新增对象的初始化顺序】单继承下派生类新增成员对象的初始化顺序

单继承下派生类新增成员对象的初始化顺序 (1)【意识】派生类新增成员对象也要初始化,千万别忘! (2)派生类构造函数执行顺序 ①调用基类构造函数 ②对派生类的新增成员对象初始化[调用顺序为类中声明顺序] ③…

红外遥控信号解码

红外遥控信号解码 之前就已经做过红外遥控的解码了,但是一直没有做记录,最近的项目又使用到了红外遥控,索性就把他捡起来记录一下,对于信号的解码,我一般的习惯都是先用逻辑分析仪抓取一下信号波形,然后对…

基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络

一、介绍 垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集(‘塑料’, ‘玻璃’, ‘纸张’, ‘纸板’, ‘金属’),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进…

stdin文件流指针

stdin文件流指针(FILE *),用于表示标准输入流。它通常与键盘进行交互,也可以通过重定向将其他输入源作为标准输入。

GPU分布式通信技术-PCle、NVLink、NVSwitch深度解析

GPU分布式通信技术-PCle、NVLink、NVSwitch 大模型时代已到来,成为AI核心驱动力。然而,训练大模型却面临巨大挑战:庞大的GPU资源需求和漫长的学习过程。 要实现跨多个 GPU 的模型训练,需要使用分布式通信和 NVLink。此外&#xf…

调用门提权

在我写的2.保护模式+段探测这篇文章中,我们提到了S位对于段描述符的控制,之前我们已经介绍了代码段和数据段,现在我们来把目光转到系统段 在这么多中结构里面,我们今天要介绍的就是编号为12的,32位调用门 结…

文心一言编写小球反弹程序并优化

使用文心一言尝试编写一个小游戏,先完成 1.python中用pygame模块设计出一个显示区域720x540的屏幕,并绘制一个小球,可以完成小球在显示区域内自动随机直线移动,碰到显示区域的便捷并反弹 import pygame import random import sy…

华为开源自研AI框架昇思MindSpore应用案例:人体关键点检测模型Lite-HRNet

如果你对MindSpore感兴趣,可以关注昇思MindSpore社区 一、环境准备 1.进入ModelArts官网 云平台帮助用户快速创建和部署模型,管理全周期AI工作流,选择下面的云平台以开始使用昇思MindSpore,获取安装命令,安装MindSpo…

gitlab和jenkins连接

一:jenkins 配置 安装gitlab插件 生成密钥 id_rsa 要上传到jenkins,id_rsa.pub要上传到gitlab cat /root/.ssh/id_rsa 复制查看的内容 可以看到已经成功创建出来了对于gitlab的认证凭据 二:配置gitlab cat /root/.ssh/id_rsa.pub 复制查…