【发布时间】:2022-07-27 23:36:53
【问题描述】:
我想从半个模型表推送到全屏 SFSafariViewController。
我想要的是首先呈现一个带有“Link Btn”的表格,单击“Link Btn”以推送到全屏网页视图以显示网页,如下所示:
我的代码如下:
import SwiftUI
import SafariServices
struct ContentView: View {
@State private var showingVC = false
var body: some View {
NavigationView() {
VStack() {
Button(action: {
self.showingVC = true
}, label: {
Text("Show sheet")
})
}
.frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: .infinity)
.background(Color.gray.opacity(0.2))
.sheet(isPresented: $showingVC) {
PresentView()
}
}
}
}
struct PresentView: View {
var body: some View {
NavigationView() {
VStack() {
NavigationLink(destination: SafariView(url: URL(string: "https://github.com/")!)) {
Text("Link btn")
.foregroundColor(.blue)
}
}
.frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: .infinity)
.background(Color.gray.opacity(0.2))
}
}
}
struct SafariView: UIViewControllerRepresentable {
let url: URL
func makeUIViewController(context: UIViewControllerRepresentableContext<SafariView>) -> SFSafariViewController {
return SFSafariViewController(url: url)
}
func updateUIViewController(_ uiViewController: SFSafariViewController, context: UIViewControllerRepresentableContext<SafariView>) {
}
}
但最终的网页不是全屏的,并且有两个导航栏,如下所示:
如何从显示的工作表视图中推送到只有一个导航栏的全屏 web 视图?
【问题讨论】:
-
@Asperi 这里有一个新问题需要你的帮助~
-
$1000 :P ........
标签: swift swiftui wkwebview swiftui-navigationlink swiftui-navigationview