- initWithFrame:configuration:
创建 Web 视图并使用指定的框架和配置数据对其进行初始化。
- initWithCoder:
返回根据指定编码器对象中的数据初始化的对象。
configuration
包含 Web 视图的配置详细信息的对象。
笔记
import UIKit
import WebKit
class ViewController: UIViewController, WKUIDelegate {
var webView: WKWebView!
override func loadView() {
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
view = webView
}
override func viewDidLoad() {
super.viewDidLoad()
let myURL = URL(string:"https://www.apple.com")
let myRequest = URLRequest(url: myURL!)
webView.load(myRequest)
}
}
Web 视图会自动将 Web 内容中显示的电话号码转换为电话链接。当用户点击“电话”链接时,“电话”应用程序将启动并拨打该号码。使用 WKWeb
对象更改默认数据检测器行为。
您还可以使用 set
以编程方式设置 Web 内容首次出现在 Web 视图中时的比例。此后,用户可以使用手势更改比例。
WKWeb
提供完整的浏览体验,包括使用链接、前进和后退按钮等在不同网页之间导航的能力。当用户单击内容中的链接时,Web 视图就像浏览器一样,并显示该链接处的内容。要禁止导航或自定义 Web 视图的导航行为,请为您的 Web 视图提供导航委托 — 一个符合 WKNavigation
协议的对象。使用导航委托修改 Web 视图的导航行为,或跟踪新内容的加载进度。
您还可以使用 WKWeb
的方法以编程方式浏览您的内容,或从应用程序界面的其他部分触发导航。例如,如果您的 UI 包含前进和后退按钮,请将这些按钮连接到 Web 视图的 go
和 go
方法以触发相应的 Web 导航。使用 can
和 can
属性来确定何时启用或禁用按钮。
人们可能希望与应用程序或其他人共享您的网络视图的内容。使用 UIActivity
呈现共享表,提供人们共享 Web 内容的所有方式。
如果您的应用程序具有 com
权限,则 iOS 共享表可以为 http
或 https
网页提供“添加到主屏幕”,从而创建指向网络的便捷链接应用程序或书签。要允许某人将当前网页添加到主屏幕,请在调用 init
创建 UIActivity
实例包含在 activity
数组中。 /b6> .有关构建浏览器应用程序的更多信息,请参阅准备您的应用程序作为默认 Web 浏览器。
- initWithFrame:configuration:
- initWithCoder:
configuration
+ handlesURLScheme:
UIDelegate
WKUIDelegate
navigationDelegate
WKNavigationDelegate
- loadRequest:
- loadData:MIMEType:characterEncodingName:baseURL:
- loadHTMLString:baseURL:
- loadFileRequest:allowingReadAccessToURL:
- loadFileURL:allowingReadAccessToURL:
- loadSimulatedRequest:response:responseData:
- loadSimulatedRequest:responseHTMLString:
loading
estimatedProgress
- reload
- reload:
- reloadFromOrigin
- reloadFromOrigin:
- stopLoading
- stopLoading:
- startDownloadUsingRequest:completionHandler:
inspectable
scrollView
title
URL
mediaType
customUserAgent
serverTrust
hasOnlySecureContent
themeColor
underPageBackgroundColor
pageZoom
allowsMagnification
magnification
- setMagnification:centeredAtPoint:
- pauseAllMediaPlaybackWithCompletionHandler:
- pauseAllMediaPlayback:
- requestMediaPlaybackStateWithCompletionHandler:
- requestMediaPlaybackState:
- setAllMediaPlaybackSuspended:completionHandler:
- suspendAllMediaPlayback:
- resumeAllMediaPlayback:
- closeAllMediaPresentationsWithCompletionHandler:
WKMediaPlaybackState
cameraCaptureState
microphoneCaptureState
- setCameraCaptureState:completionHandler:
- setMicrophoneCaptureState:completionHandler:
WKMediaCaptureState
- findString:withConfiguration:completionHandler:
WKFindConfiguration
WKFindResult
allowsBackForwardNavigationGestures
backForwardList
- goBack:
- goBack
- goForward:
- goForward
- goToBackForwardListItem:
canGoBack
canGoForward
allowsLinkPreview
interactionState
- evaluateJavaScript:completionHandler:
- evaluateJavaScript:inFrame:inContentWorld:completionHandler:
- callAsyncJavaScript:arguments:inFrame:inContentWorld:completionHandler:
- takeSnapshotWithConfiguration:completionHandler:
- createPDFWithConfiguration:completionHandler:
- createWebArchiveDataWithCompletionHandler:
- printOperationWithPrintInfo:
WKSnapshotConfiguration
WKPDFConfiguration
WKUIDelegate