如何在 UIViewRepresentable 的按钮点击上显示 UIViewControllerRepresentable 屏幕

时间:2021-07-22 08:51:01

标签: ios swiftui uiviewcontrollerrepresentable

我正在开发一个 SwiftUI 项目,在我的应用程序中,我必须显示地图,我可以使用 UIViewRepresentable 显示地图,现在该地图视图将有一个按钮,点击该按钮 mapview 将需要显示控制器(全屏方向)视图,我知道我可以使用 UIViewControllerRepresentable 来做到这一点。

我需要帮助,如何显示 UIViewControllerRepresentable 按钮点击后的 UIViewRepresentable

到目前为止我所做的是添加我的代码:

单击按钮时,我正在调用调用 showDetailMap MapDetailViewController 函数,但有些MapDetailViewController 未作为模型打开。

private func showDetailMap() {
    MapDetailViewController()
}

struct MapDetailViewController: UIViewControllerRepresentable {

func makeUIViewController(context: Context) -> MapDetailViewController {
    let viewController: MapDetailViewController = MapDetailViewController()
    return viewController
}

func updateUIViewController(_ uiViewController: MapDetailViewController, context: Context) {}


}

请帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

    struct ContentView: View {
    
     @State var isPresentVC = false
    
     var body: some View {
     
           ZStack {
                Button("OpenMapVC") {
                    isPresentVC = true
                }
                
            }.fullScreenCover(isPresented: $isPresentVC, content: {
               MapDetailViewController()
            })
       }
  }
相关问题