Swiftui 添加LazyVGrid后预览崩溃
我正在学习斯坦福CS193p,在用HStack切换LazyVGrid之前,一切都很顺利 我用教授做的代码检查了我的代码,它们是一样的。但我的代码中令人困惑的部分是,当我的emojiCount=4时,预览效果很好,我可以使用LazyVGrid,但是当我将emojiCount值更改为4以上时,如5或24,它会立即崩溃 事故信息如下: 这是我的代码:Swiftui 添加LazyVGrid后预览崩溃,swiftui,cs193p,lazyvgrid,Swiftui,Cs193p,Lazyvgrid,我正在学习斯坦福CS193p,在用HStack切换LazyVGrid之前,一切都很顺利 我用教授做的代码检查了我的代码,它们是一样的。但我的代码中令人困惑的部分是,当我的emojiCount=4时,预览效果很好,我可以使用LazyVGrid,但是当我将emojiCount值更改为4以上时,如5或24,它会立即崩溃 事故信息如下: 这是我的代码: 导入快捷界面 结构ContentView:View{ var emojis=[“在模拟器中运行代码,您将看到错误 致命错误:每个布局项只能出现一次 这
导入快捷界面
结构ContentView:View{
var emojis=[“在模拟器中运行代码,您将看到错误
致命错误:每个布局项只能出现一次
这就产生了表情符号。你有很多表情符号,但只有4种不同的类型。
在项目被\.self
引用的循环中,您有责任确保项目是唯一的。非常感谢您!是的,您的回答完美地解决了我的问题。但我还有一个问题。在我将LazyVGrid与HStack切换之前,我的代码与HStack配合得很好,代码允许我添加4个以上卡片,甚至其中一些卡片都是相同的。您能解释一下这背后的逻辑吗?ForEach
对于唯一性是相当宽容的,如果项目只是显示在一个普通的组中,因为项目没有按字面上的方式标识。在网格视图中,项目被分配给网格项目,这要求项目是唯一的。