簡體   English   中英

SwiftUI 在 Foreach 中得到 position

[英]SwiftUI get position in Foreach

我對 SwiftUI 比較陌生,遇到了一個問題。

我已經為我的數組構建了這個結構:

struct Outfit:Identifiable {
   var id = UUID()
   var user: String
   var amount: Double
   var rating: Double
}

我可以打印出我需要的所有信息:

ForEach(loader.outfitcards) { index  in
   // I need to know if it is the first, second, etc. time it runs
}

但我需要知道數組內部已經運行了多少次。 我已經在數組 +1 處嘗試了一個 @state 變量,但 Swiftui 不允許我這樣做,因為這不是一個視圖。 誰能幫我? 我也不能讓 indices() 或 enumerated() 工作,我不能在結構中使用 ID,因為它不是一個范圍或 int object。

您應該使用.enumerated() ,其id\.element.id

ForEach(Array(loader.outfitcards.enumerated()), id: \.element.id) { (index: Int, outfit: Outfit) in
    /* ... */
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM