我正在用swift和錯誤在xcode上構建一個webview
傳遞給呼叫的引數在 Webview 的 swift 上不帶任何引數
我正在使用 swift 在 xcode 上構建一個 webview,并且傳遞給呼叫的錯誤引數在 swift 上不接受 Webview 的引數
//
// ContentView.swift
// GenuineApp
//
// Created by Kennysoft-Macbook on 11/10/22.
//
import SwiftUI
import WebKit
struct ContentView: View {
@State private var showWebView = false
private let urlstring: String = "https://www.genuineict.com"
var body: some View {
VStack(spacing: 40) {
WebView(url: URL(string: urlstring)!).frame(height: 500.0)
.cornerRadius(10)
}
}
}
struct WebView: UIViewRepresentable {
var url:URL
func makeUIView(context: Context) -> some UIView {
return WKWebView()
}
func updateUIView(_ uiView: UIViewType, context: Context) {
let request = URLRequest(url: url)
UIView.load(request) Here is the error Argument passed to call that takes no arguments on swift for Webview
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
這看起來不錯,但它不適用于最新的 xcode 是否有人在 2022 年使用帶 swift 的 xcode
uj5u.com熱心網友回復:
您呼叫的UIView.load()
方法不帶任何引數,因此 XCode 在他們的評估中是正確的。您可以控制單擊該.load
方法并轉到檔案以驗證這一點。
您可能想要做的是將 傳遞URLRequest
給WKWebView
您正在創建的。通過將回傳值設為makeUIView
specific (因此不使用some
使其不透明),該updateUIView
方法也會將其識別為傳入的uiView
. 然后你就可以呼叫正確WKWebView.load(_:)
的了:
struct WebView: UIViewRepresentable {
var url: URL
func makeUIView(context: Context) -> WKWebView {
WKWebView()
}
func updateUIView(_ uiView: WKWebView, context: Context) {
let request = URLRequest(url: url)
uiView.load(URLRequest(url: url))
}
}
uj5u.com熱心網友回復:
將您的 updateUIView 更改為,以便您呼叫load
您的 Web 視圖實體
func updateUIView(_ webView: WKWebView, context: Context) {
let request = URLRequest(url: url)
webView.load(request)
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/531080.html
標籤:迅速代码