Swift - MJRefresh库的使用详解6(WebView上实现下拉刷新)
相关文章系列(代码均已升级至Swift4):
在前面文章中介绍了如何使用使用 MJRefresh,实现 tableView、collectionView 的上拉加载,下拉刷新功能。本文继续演示如何在 UIWebView 上实现下拉刷新。
1,样例效果图
(1)初始化的时候,webView 默认加载 hangge.com 首页。
(2)下拉 webView 即可实现当前页面的刷新。



2,样例代码
import UIKit class ViewController: UIViewController { var webview:UIWebView! // 顶部刷新 let header = MJRefreshNormalHeader() override func viewDidLoad() { super.viewDidLoad() //创建webView并初始化 let frame = CGRect(x:0, y:20, width:UIScreen.main.bounds.width, height:UIScreen.main.bounds.height) self.webview = UIWebView(frame: frame) self.webview.scalesPageToFit = true self.view.addSubview(self.webview) //加载页面 let request = URLRequest(url: URL(string: "http://hangge.com")!) self.webview.loadRequest(request) //下拉刷新相关设置 header.setRefreshingTarget(self, refreshingAction: #selector(ViewController.headerRefresh)) self.webview.scrollView.mj_header = header } //顶部下拉刷新 @objc func headerRefresh(){ print("下拉刷新.") sleep(2) //刷新页面 self.webview.reload() //结束刷新 self.webview.scrollView.mj_header.endRefreshing() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } }源码下载:
