页面内容是:有一个卡片列表,点击卡片,弹窗展示卡片详情。 目前问题,首次点击后,弹窗有打开,但是弹窗里没有渲染内容,关闭后打开其它卡片可正常显示。。。
简化代码如下:
@State private var showStudentDetail: Bool = false
@State private var studentDetail: Student?
...
VStack(alignment: .leading, spacing: 12) {
ForEach(students) { student in
CardView(student: student)
.onTapGesture {
studentDetail = student
showStudentDetail.toggle()
}
}
.sheet(isPresented: $showStudentDetail) {
if let studentDetail = studentDetail {
StudentDetailView(student: studentDetail)
}
}
}
1
ansonsiva 233 天前
我记得.sheet 在你整个 view 出来的时候就已经渲染了
应该问题就是这个吧 |
2
kinfuy 106 天前
|