SwiftUI AsyncImage cancelled

  • 问题描述
  • 解决方案

问题描述

在 List 中通过 AsyncImage 循环加载图片,经常无法加载出来,通过打印错误日志,显示错误原因是 cancelled

List {ForEach(fireInfo.anList ?? []) { annex inAsyncImage(url: URL(string: annex.path)) { phase inif let image = phase.image {image.resizable().scaledToFit() // Displays the loaded image.} else if phase.error != nil {Text("图片路径: \(annex.path), 错误原因: \(phase.error!.localizedDescription)").foregroundColor(.red)} else {ProgressView()}}}}

解决方案

百度不到解决原因,去 Google 了一下就出来了…

  • https://developer.apple.com/forums/thread/682498

总不能等版本更新再上线吧…

其实这个问题也很简单,是因为直接在 List 中加载 AsyncImage 才会出现这个问题,那我们就在 AsyncImage 外面套一层就可以了(VStack、HStack 都行,Group 不行)

List {VStack {ForEach(fireInfo.anList ?? []) { annex inAsyncImage(url: URL(string: annex.path)) { phase inif let image = phase.image {image.resizable()// .scaledToFit() // Displays the loaded image..transition(.slide).frame(width: 50, height: 50)} else if phase.error != nil {Text("图片路径: \(annex.path), 错误原因: \(phase.error!.localizedDescription)").foregroundColor(.red)} else {ProgressView()}}}}
}

SwiftUI AsyncImage cancelled 无法加载图片相关推荐

  1. Glide 如何实现正确加载图片而没有错位

    我们在平时的项目使用下面的代码 GlideApp.with(context).load(url).into(imageView); 当我们在常见的列表界面中(如 recycleview 实现的列表), ...

  2. 原生CSS设置预加载图片之前的默认背景图

    /*默认加载图片*/ .class-name { /*背景图片*/background: url(../../img/banner/banner-default.jpg) no-repeat cent ...

  3. 【Qt】QPixmap加载图片报错:Corrupt JPEG data: premature end of data segment Didn‘t expect more than one scan

    1.问题描述 在使用QPixmap加载图片时失败,错误信息如下 Corrupt JPEG data: premature end of data segment Didn't expect more ...

  4. 13-flutter 加载图片

    Image Widget 1 flutter 加载图片的方式 new Image 从ImageProvider 中获取图像 new Image.asset 使用key 从assetBundle 获取图 ...

  5. html5 canvas 加载图片

    html5 canvas 加载图片 视频 https://www.bilibili.com/video/BV19E411G7Vj?p=30 https://www.bilibili.com/video ...

  6. qt快速加载图片_Qt实用技巧:使用Qt加载超大图片的耗时测试

    需求 某机器人项目中,需要加载构建的地图,此处仅测试直接加载图片的时间. 相关博客 测试代码 QString path; path = "./map/1.png"; QFileIn ...

  7. Android实现ListView异步加载图片

    转: http://www.iteye.com/topic/685986 ListView异步加载图片是非常实用的方法,凡是是要通过网络获取图片资源一般使用这种方法比较好,用户体验好,下面就说实现方法 ...

  8. 【第二篇】Volley的使用之加载图片

    Volley加载图片有两种方式: 1,ImageRequest 来对网络图片进行请求,放入请求队列,获取后现在在控件上面. 2,NetworkImageView 最为自定义控件来自动加载网络图片. 3 ...

  9. canvas初体验之加载图片

    上一篇的介绍主要是画一些基本的图案,这一篇主要是加载图案. canvas加载图片主要分为两个步骤: 1.获取图片资源. 2.将图片资源画到画布上. 1.1获取图片资源,canvasAPI为我们提供了多 ...

最新文章

  1. [CSS]BlendTrans滤镜
  2. DDD领域驱动实践记录
  3. 搞懂Java的反射机制
  4. 世界首富贝索斯退休?辞任CEO,转任董事会主席
  5. MySQL 5.7--多源复制(非GTID模式)
  6. 结对项目--地铁出行路线规划程序(续)——附加题
  7. DataGridView默认不选中
  8. centos下编译lnmp环境
  9. 贺利坚老师汇编课程55笔记:带借位减法指令SBB
  10. Java基础常见笔试题总结
  11. Cmake :创建vs的makefile工程(1)
  12. focus和onfocus区别
  13. antd select.option选项加入额外属性
  14. 数值计算(三)-插值法(2)牛顿插值法
  15. 关闭Linux哔哔声
  16. win10读取不了U盘或者移动硬盘的解决方法
  17. 【图文教程】MySQL
  18. 34.发送ICMP时间戳请求
  19. 全国计算机二级上机模拟考试,全国计算机二级上机模拟考试习题集(01-50)解答..doc...
  20. Linux命令操作——常用解压缩命令

热门文章

  1. 如果你手头有20万,你是拿去买房还是拿去投资?
  2. 如何用管程实现生产者消费者问题?
  3. ssrs筛选器_SSRS ReportServer:服务性能计数器指南
  4. SQL Server中SQL Union vs Union All
  5. jenkines的工作区目录位置查找
  6. [Codeforces 487E]Tourists
  7. jsp页面播放服务器视频
  8. CSS——行内元素的margin与padding
  9. Effective Java (7) - 避免终止方法
  10. 使用Tomcat Catalina进行Tomcat服务器虚拟目录设置