ios webview 进度条的展示(一)

最简单的实现ios进度条,可以是一个模拟展示,而不是真实的加载网页进度,

源码下载:https://github.com/feifeiios/WebviewTest/tree/master

完成如下图展示:

代码:

在网页加载界面,添加UIWebView控件和UIProgress 控件,界面跳转,传递网页链接字符串,

代码

    @IBOutlet weak var webview: UIWebView!
    
    @IBOutlet weak var urlLable: UILabel!//展示传递的网页链接

    var urlstring = ""
 
    @IBOutlet weak var progress: UIProgressView!
   

界面加载网页的代码:

    override func viewDidLoad() {
        super.viewDidLoad()

        urlLable.text = urlstring
        webview.delegate = self
        let request = NSURLRequest.init(URL: NSURL.init(string: urlstring)!)
        webview.loadRequest(request)
        webview.backgroundColor = UIColor.grayColor()
        
        
    }

代理:

   func webViewDidStartLoad(webView: UIWebView) {
        progress.hidden = false//展示
        progress.setProgress(1.0, animated: true)//设置加载到1.0的动画
        print("start")
    }
    func webViewDidFinishLoad(webView: UIWebView) {
        progress.setProgress(0.0, animated: true)//恢复到初始值
        print("finished")
        progress.hidden = true//隐藏
        self.title = webview.stringByEvaluatingJavaScriptFromString("document.title")//获取webview的标题
    }
    func webView(webView: UIWebView, didFailLoadWithError error: NSError?) {
        print("failed")
        let random = arc4random() % 10
        let pgs = Float(random)/10.0
        progress.setProgress(pgs, animated: true)
    
//        progress.hidden = true
    }

网页加载开始、结束使用     public func setProgress(progress: Float, animated: Bool)展示进度,如果网页加载失败,先使用arc4random找一个随机数,1-9即可,除以10.0,即可得到一个0~1的浮点型随机数值,用于设置进度条,即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值