Xcode报错:No exact matches in reference to static method ‘buildExpression‘

server/2024/12/23 5:59:49/

Xcode报错1:No exact matches in reference to static method 'buildExpression'

Xcode报错2:Type '()' cannot conform to 'View'

这两个报错都是因为在SwiftUI的View的Body里面使用了ForEach循环,却没有在ForEach循环闭包的内部返回视图,而是做了一个对数据集合进行修改的操作,所以才报错

SwiftUI中的ForEach是一个视图构建器,用于根据提供的数据集合创建视图。

SwiftUI中,嵌套ForEach应仅用于常量数据。这意味着,如果数据集合是不可变的,即在创建后不会发生变化,那么可以使用嵌套ForEach来创建视图。这种情况下,ForEach会自动为数据集合中的每个元素创建一个视图。

解决方案:

在ForEach循环内部只需要返回遵循View协议的视图就好,如果需要对数据集合中某个某个数据的某个属性进行修改,修改后能更新视图,可以使用For in 循环来做或者将修改操作放到某个点击事件的闭包里或者是某个UI更新的回调闭包里去修改


http://www.ppmy.cn/server/118465.html

相关文章

Linux操作系统面试题记录

一、进程与线程 1.并发和并行的区别 并发:一个cpu处理器处理多个任务; 并行:多个cpu处理器处理多个任务; 2.进程和线程是什么?区别?何时用线程何时用进程? Linux中其实没有进程线程之分&…

Mac 创建 Python 虚拟环境

在 macOS 上,您可以使用以下步骤使用 virtualenv 创建虚拟环境: 首先,确保您已经安装了 Python 和 virtualenv。您可以在终端中运行以下命令来检查它们是否已安装: python --version virtualenv --version如果这些命令没有找到&am…

Python XML 解析

什么是 XML? Python 对 XML 的解析 1.SAX (simple API for XML ) 2.DOM(Document Object Model) 3.ElementTree(元素树) python使用SAX解析xml ContentHandler类方法介绍 make_parser方法 parser方法 parseString方法 Python 解析XML实例 使用xml.dom解析…

IO模型---BIO、NIO、IO多路复用、AIO详解

本篇将想给详细解释一下什么是BIO、NIO、IO多路复用以及AIO~ 同步的阻塞(BIO)和非阻塞(NIO)的区别 BIO:线程发来IO请求后,一直阻塞着IO线程,需要缓冲区这边数据准备好之后,才会进行下一步的操作。 举个🌰&#xff1…

在Word中,用VBA比较两段文本的相似度

效果1: 去掉字符串中回车,进行改进后效果: 代码: Function LevenshteinDistance(s As String, t As String) As IntegerDim d() As IntegerDim i As IntegerDim j As IntegerDim cost As IntegerDim sLen As IntegerDim tLen As IntegersLen…

新手制作视频用什么软件好?五款剪辑工具分享!

在数字时代,视频制作已成为许多人表达创意、记录生活的重要方式。但对于新手而言,面对琳琅满目的视频编辑软件,往往会感到无所适从。今天,我们就来推荐五款适合新手的视频制作软件,它们分别适用于不同的操作系统平台&a…

leetcode49字母异位词分组

思路一 知道要用hash,但是当时不知道怎么解决字符串的全排列。一个单词可以变成好多单词,我怎么对这些单词枚举呢。结果发现可以sort,那么字母一样的单词一定一样,然后将单词放到hashmap里面,凡是排完序一样的单词都放到一个队列里去。 代码…

JavaScript 事件处理

一、简介 ​ 事件:发生在HTML元素上的事情,可以是用户的行为,也可以是浏览器的行为,如 用户点击了某个HTML元素用户将鼠标移动到某个HTML元素上用户输入数据时光标离开页面加载完成 ​ 事件源:事件触发的源头&#xf…