为什么模式视图在SwiftUI中只出现一次

时间:2019-08-21 02:11:02

标签: modal-dialog swiftui

当尝试轻按“列表”单元格时,我尝试使用“工作表”修饰符弹出模式视图。我发现在列表单元格视图中可以(单击单元格时,模态视图可以多次弹出),但是在列表视图中,模态视图仅弹出一次。

我尝试使用“手势”和“按钮”来触发弹出窗口,我发现一旦使用“工作表”修饰符来触发“模态视图”,结果都是一样的。


struct ContentView: View {

    var body: some View {

        List {
            ForEach(0..<5) { _ in
                ListRow()
            }
        }

    }
}

struct ListRow: View {
    @State var showDetail: Bool = false
    var body: some View {
        HStack(spacing: 20.0) {
            Button(action: {self.showDetail = true}) {
                HStack {
                    Text("BigTitle")
                        .font(.largeTitle)
                        .fontWeight(.heavy)

                    Spacer()

                    Text("SubTitle")
                        .font(.headline)
                        .fontWeight(.medium)
                         .padding(.trailing, 10)
                }
            }
            .sheet(isPresented: self.$showDetail) {
                DetailView()
            }
        }
        .frame(width: 320, height: 48)
        .padding()
    }
}

struct DetailView: View {
    var body: some View {
        Text("I am Detail View!")
            .font(.largeTitle)
            .fontWeight(.heavy)
    }
}

我希望可以在列表视图中多次弹出模式视图,但实际上弹出窗口只发生了一次。

希望您回复! 谢谢!

0 个答案:

没有答案