如何让弹出视图显示在 iPhone 上,就像在 iPad 上使用 SwiftUI 一样?

Tho*_*aun 5 popover swift swiftui

在此处输入图片说明我正在使用 SwiftUI 构建一个应用程序,并想创建一个带有小段落和按钮的小弹出框。我已经尝试了多种方法,但无法弄清楚如何让它像 iPad 一样显示为弹出框而不是 Modally。

mal*_*low 0

对不起。被误解的问题。以下不是正确答案: 如果你想打开模式窗口,你需要这样的东西:

import SwiftUI

struct test: View {

    @State private var show_modal_window: Bool = false

    var body: some View {

        VStack {
            Spacer()
            Button(action: {
                self.show_modal_window = true
            }) {
                Text("Show modal")
                    .font(.largeTitle)
                    .foregroundColor(Color.white)
            }.sheet(isPresented: self.$show_modal_window) {
                ModalView()
            }
            .padding()
            .background(Color.blue)
        }
    }
}

struct test_Previews: PreviewProvider {
    static var previews: some View {
        test()
    }
}
Run Code Online (Sandbox Code Playgroud)

并且您需要创建另一个 Swift View 作为单独的文件。在我的示例中,它被命名为“ModalView”