Swift中的WebView

WebView是Swift中用于显示网页内容的组件,可以将网页嵌入到iOS应用中。WebView可以加载和显示网页、处理用户的交互操作,并提供了一些控制网页内容的方法。

在Swift中使用WebView,首先需要导入WebKit框架:

swift 复制代码
import WebKit

然后,创建一个WKWebView的实例,并将其添加到视图中:

swift 复制代码
let webView = WKWebView(frame: CGRect(x: 0, y: 0, width: 320, height: 480))
view.addSubview(webView)

加载网页内容可以使用loadRequest方法,传入一个NSURLRequest对象:

swift 复制代码
let url = URL(string: "https://www.example.com")
let request = URLRequest(url: url!)
webView.load(request)

可以通过监听webView的estimatedProgress属性来获取网页加载的进度:

swift 复制代码
webView.addObserver(self, forKeyPath: #keyPath(WKWebView.estimatedProgress), options: .new, context: nil)

处理网页加载完成后的事件可以使用WKNavigationDelegate协议的方法:

swift 复制代码
class ViewController: UIViewController, WKNavigationDelegate {
    // ...
    
    override func viewDidLoad() {
        super.viewDidLoad()
        webView.navigationDelegate = self
    }
    
    func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
        print("Web page loaded")
    }
}

除了加载网页外,WebView还提供了一些方法来控制网页内容的显示和交互,例如:设置网页缩放、前进后退浏览、执行JavaScript代码等。

相关推荐
一只大袋鼠7 小时前
SpringMVC全局异常处理
java·开发语言·springmvc·javaweb
rit84324997 小时前
基于 MATLAB 的坐标变换程序
开发语言·matlab
songgeb7 小时前
iOS IAP 本地货币展示:从一个需求到搞清楚 priceLocale
ios·swift
不知名的老吴7 小时前
C++中emplace函数的不适场景总结(一)
java·开发语言·c++
LJianK17 小时前
线程安全、线程同步、竞态条件
java·开发语言
tangjunjun-owen7 小时前
[特殊字符] Python异步调用本地Ollama大模型实战:从Demo到高并发避坑指南
开发语言·chrome·python
RSTJ_16257 小时前
PYTHON+AI LLM DAY FOURTY-THREE
开发语言·人工智能·python
Volunteer Technology7 小时前
SpringAI(二)Models 模型介绍
开发语言·人工智能·python
lly2024068 小时前
《jEasyUI 取得选中行数据》
开发语言
Ulyanov8 小时前
《从质点到位姿:基于Python与PyVista的导弹制导控制全栈仿真》: 刚体觉醒——6-DOF刚体动力学、四元数与全姿态解算
开发语言·人工智能·python·算法·系统仿真·雷达电子对抗仿真