• 欢迎访问1024小神,一个只会Python的程序猿不是一个好司机
  • 有什么想对我说的可以在留言板里给我留言哦~
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏1024小神吧

SwiftUI—使用WebKit里的网页视图

C other 1024小神 2个月前 (10-10) 117次浏览 6个评论

SwiftUI并没有包含WebView,这里通过遵循UIViewRepresentable协议,在SwiftUI中集成UIKit中的WKWebView。

示例代码:

//
//  ContentView.swift
//  WebViewDemo
//
//  Created by jiang on 2021/10/10.
//

import SwiftUI
import WebKit //导入框架

struct ContentView : UIViewRepresentable { //使当前结构体遵循UIViewRepresentable协议。使用该协议的实例,可以在SwiftUI中创建和管理UIView对象
    
    func makeUIView(context: UIViewRepresentableContext) -> WKWebView { //实现协议里的makeUIView方法,用来初始化并返回一个WKWebView网页视图对象
        return WKWebView()
    }
    
    func updateUIView(_ uiView: WKWebView, context: UIViewRepresentableContext) { //实现协议里的updateUIView方法,用来设置网页视图需要加载的网址参数
        let request = URLRequest(url:URL(string: "https://up.91p22.net//")!) //初始化一个URLRequest对象,作为网页视图的网址
        uiView.load(request) //通过load方法,使网页视图加载该网址对应的网页
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}


如有失效,请留言告知丨转载请注明原文链接:SwiftUI—使用WebKit里的网页视图
点赞 (3)

您必须 登录 才能发表评论!

(6)个小伙伴在吐槽
  1. 终结者
    不明觉厉 :mrgreen:
    2021-11-24 20:36
  2. decim
    1024!签到时间:2021-11-19 09:38:07,每日打卡,生活更精彩哦~
    2021-11-19 09:38
  3. TOMORI
    TOMORI
    虽然看不懂,感觉很厉害
    2021-10-25 10:37
  4. decim
    1024!签到时间:2021-10-21 21:25:11,每日打卡,生活更精彩哦~
    2021-10-21 21:25
  5. decim
    1024!签到时间:2021-10-15 16:10:48,每日打卡,生活更精彩哦~
    2021-10-15 16:10
  6. decim
    1024!签到时间:2021-10-11 20:46:47,每日打卡,生活更精彩哦~
    2021-10-11 20:46