用wkwebview

问题描述 投票:0回答:3

没有关于将拉力应用于Web视图的刷新行为的特殊内容,但是请记住,您需要将其添加为Web视图中的子视图:
ios swift wkwebview pull-to-refresh
3个回答
23
投票
UIRefreshControl

scrollView
方法:

override func viewDidLoad() { super.viewDidLoad() // must call super // after done with setup the `webView`: let refreshControl = UIRefreshControl() refreshControl.addTarget(self, action: #selector(reloadWebView(_:)), for: .valueChanged) webView.scrollView.addSubview(refreshControl) }

tip:

而不是使用

reloadWebView
并将其铸造为

@objc func reloadWebView(_ sender: UIRefreshControl) { webView.reload() sender.endRefreshing() }
,您可以直接使用
NSURLRequest
,因此可以代替:

URLRequest

将其作为:
URLRequest

add
self.webView.load(NSURLRequest(url: URL(string: "https://jwelsh19.wixsite.com/countryday")!) as URLRequest)
to to在

webView.load(URLRequest(url: URL(string: "https://jwelsh19.wixsite.com/countryday")!))

下回调为
refreshControl

7
投票
webView.scrollView

将其添加到重新加载
didSet


webView

上面的答案是正确的,但是要使用
Uirefreshcontrol
您需要打开

var webView: WKWebView! { didSet { let refreshControl = UIRefreshControl() refreshControl.addTarget(self, action: #selector(reload(_:)), for: .valueChanged) webView.scrollView.refreshControl = refreshControl } }

。因此,新的代码将是:

webView
单独的功能后:

3
投票

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.