SwiftUI ForEach获取2d数组中的元素AND索引

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SwiftUI ForEach获取2d数组中的元素AND索引相关的知识,希望对你有一定的参考价值。

我需要访问索引以及ForEach循环中的元素。

到目前为止,我已经在我的数据存储中:

@Published var sevenDayReview: [[CGFloat]] = [
        [1754,1654],[1854,1687],[1985,1854],[1765,1652],[1864,1698],[1987,1654],[1865,1465]
    ]

并且在我看来:

ForEach(self.dataModel.sevenDayReview, id: \.self)  array in
       ForEach(array, id: \.self)  element in
             VStack 
                    ReviewChart(dataModel: CalorieViewModel(), valueHeight: element, cornerRadius: 5, color: 2 )
              
       

工作正常。但是我想将当前元素的当前数组索引传递给color参数。

背景:使用数据存储中的值加载条形图,并按行索引交替显示颜色。

我用脑子糊涂了一下,现在我不知道在SwiftUI中最好的方法是什么。

我非常感谢您的帮助。谢谢!

答案

您可以使用ForEach视图的different init

ForEach(0..<array.endIndex)  index in //inner ForEach
    VStack 
        ReviewChart(dataModel: CalorieViewModel(), 
                    valueHeight: array[index], 
                    cornerRadius: 5, 
                    color: index)
    

以上是关于SwiftUI ForEach获取2d数组中的元素AND索引的主要内容,如果未能解决你的问题,请参考以下文章

SwiftUI - 在 ForEach 中获取 TextField 数组

SwiftUI - 如果在 ForEach 循环内

删除最后一个数组元素时,SwiftUI列表ForEach索引超出范围

SwiftUI - 列出嵌套数组中的元素

如何在数组大小更改后刷新 ForEach 显示元素的数量(SwiftUI,Xcode 11 Beta 5)

为啥我不能访问这个数组 ForEach 循环中的数据? SwiftUI