【发布时间】:2020-10-27 11:30:57
【问题描述】:
我想在我的 RankingView 中创建一个列表,以显示我的玩家排名。 可以在选择器中选择排名类型。玩家可以通过高分或尝试次数来显示排名
let rankChoice = ["highScore","attempt"]
@State var listRank : [Player] = []
@State var selectedIndex = 0 // gives selected index from Picker
播放器定义如下:
Struct Player: Identifiable {
var id = UUID
let playerName : String
let highscore : Int
let attempt : Int
}
最后我想显示一个列表,其中包含 player.playerName 和 (player.highscore OR player.attempt) 取决于我的选择器中的用户选择。
List{
ForEach(0 ..< listRank.count, id: \.self) { index in
HStack{
Text("\(listRank[index].playerName)")
Spacer()
Text(String(listRank[index].rankChoice[selectedIndex]))
}
}
}
所以我想得到:listRank[index].rankChoice[selectedIndex]
错误:但是玩家作为没有成员排名选择。
我应该如何从变量中获取特定属性?
【问题讨论】:
标签: arrays swift object foreach swiftui