相关课程:http://hdjc8.com/hdjc/swiftUI/
SwiftUI并没有包含WebView,这里通过遵循UIViewRepresentable协议,在SwiftUI中集成UIKit中的WKWebView。
示例代码:
import SwiftUI
//首先导入需要使用到的WebKit框架。
import WebKit
//使当前的结构体遵循UIViewRepresentable协议。使用该协议的实例,可以在SwiftUI中创建和管理UIView对象。
struct ContentView : UIViewRepresentable {
//实现协议里的makeUIView方法,用来初始化并返回一个WKWebView网页视图对象。
func makeUIView(context: UIViewRepresentableContext<ContentView>) -> WKWebView {
return WKWebView()
}
//接着实现协议里的updatedUIView方法,用来设置网页视图需要加载的网址参数。
func updateUIView(_ uiView: WKWebView, context: UIViewRepresentableContext<ContentView>) {
//初始化一个URLRequest对象,作为网页视图的网址。
let request = URLRequest(url:URL(string: "https://apple.com")!)
//通过load方法,使网页视图加载该网址对应的网页。
uiView.load(request)
}
}
查看运行结果: