
页面内容是:有一个卡片列表,点击卡片,弹窗展示卡片详情。 目前问题,首次点击后,弹窗有打开,但是弹窗里没有渲染内容,关闭后打开其它卡片可正常显示。。。
简化代码如下:
@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 2024-04-28 18:10:34 +08:00 我记得.sheet 在你整个 view 出来的时候就已经渲染了 应该问题就是这个吧 |
2 kinfuy 2024-09-02 19:45:01 +08:00 |