swiftui - 使用 navigationLink 返回后,SwiftUI 列表列不适合单元格视图
问题描述
我创建了一个列表来显示我的玩家信息。但我的列表列不适合我的单元格视图。在某些列中消失的文本字段。这很奇怪,因为它们中的大多数都有“-1”号。有人知道任何原因可能导致它发生吗?演示视频:https ://youtu.be/vUo9zZZ5olo
struct SelectPlayerCellView: View {
@ObservedObject var player: PlayerGameData
@State var newuniformNumber: Int = 0
var body: some View {
HStack{
Button(action: {
self.player.isPlayer.toggle()
}){
if self.player.isPlayer{
Image(systemName: "checkmark.rectangle")
}
else{
Image(systemName: "rectangle")
}
}
TextField("\(player.uniformNumber)", value: $newuniformNumber, formatter: NumberFormatter())
.font(.system(size: 40))
.frame(width:55)
.padding(5)
Text(player.name)
}
.padding(.horizontal,8)
.cornerRadius(20)
}
}
我把我的单元格视图放在列表中
struct SelectPlayerView: View {
@EnvironmentObject var teamResult : TeamResult
@ObservedObject var allPlayerList : PlayersGameData = PlayersGameData()
@State var goToNextPage : Bool = false
var selectedPlayerList : PlayersGameData = PlayersGameData()
var body: some View {
VStack {
List{
ForEach(allPlayerList.playersGameDataArray, id: \.userId) { (player) in
SelectPlayerCellView(player: player)
}.onMove(perform: move)
}
NavigationLink(destination: SelectStartingLineupView(selectedPlayerList: self.selectedPlayerList).environmentObject(teamResult),isActive: $goToNextPage){
EmptyView()
}
VStack (spacing: 10){
Button(action: {
self.createPlayersList()
self.goToNextPage.toggle()
}){
Image(systemName: "arrowshape.turn.up.right.circle")
}
}
}.onAppear(perform: getTeamMemberResults)
.onDisappear(perform: clearTeamMemberResults)
.navigationBarItems(trailing: EditButton())
}
解决方案
推荐阅读
- postgresql - TypeORM:在运行时为 EntityManager(或存储库)动态设置数据库模式?
- c# - 将带有特殊字符的字符串转换为十六进制 - C#
- awk - How can I use sed to generate an awk file?
- python - 如何获取列表框中项目的索引
- debugging - Custom response header columns in Firefox's Network Monitor
- spring - 如何让这个 spring-boot 代码在 weblogic 10.3.6 上工作?
- css - CSS网格 - 不同屏幕+背景上的可变布局位置
- javascript - 如何打开从 pwa(在 android shell 中)到另一个浏览器的链接
- mysql - 在插入和更新发生时,从另一个具有几个不同列的类似表同步表的正确方法
- android - 数据绑定内存泄漏