小编Mag*_*eat的帖子

SwiftUI:Tabview,更改标签时保持状态

我创建一个带有多个选项卡的应用程序,每个选项卡都有一个webview。

我的网页视图:

struct WebView : UIViewRepresentable {

    let request: URLRequest


    func makeUIView(context: Context) -> WKWebView  {
        return WKWebView()
    }

    func updateUIView(_ uiView: WKWebView, context: Context) {
        uiView.load(request)
    }

}
Run Code Online (Sandbox Code Playgroud)

我在更改标签时会再次创建Web视图的问题。我只想创建一次Webview,然后每次更改选项卡时都保持状态,并且Webview不会每次都充电

我的代码:

struct ContentView: View {

    var body: some View {
        TabView {
            WebView(request: URLRequest(url: URL(string: "https://www.google.com/")!))
                    .tabItem {
                        Image(systemName: "1.circle")
                        Text("Messenger")
                    }.tag(0)

            WebView(request: URLRequest(url: URL(string: "https://facebook.com/login")!))
                    .tabItem {
                        Image(systemName: "2.circle")
                        Text("Trello")
                    }.tag(1)
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

swift swiftui

5
推荐指数
1
解决办法
263
查看次数

标签 统计

swift ×1

swiftui ×1