wkwebView 新增 進度條
// 進度條 的 progress
let progress: CAShapeLayer = {
let shape = CAShapeLayer()
let path = UIBezierPath()
path.move(to: CGPoint(x: 0, y: 1.5))
path.addLine(to: CGPoint(x: UIScreen.main.bounds.width, y: 1.5))
shape.path = path.cgPath
// 進度條顏色
shape.strokeColor = UIColor(102, 153, 255).cgColor
shape.fillColor = UIColor.clear.cgColor
shape.strokeStart = 0
shape.strokeEnd = 0
shape.lineWidth = 3
shape.fillRule = kCAFillRuleNonZero
shape.lineCap = kCALineCapRound
return shape
}()
在viewdidload 裡面 觀察webView
webView.addObserver(self, forKeyPath: obk1, options: .new, context: nil)
webView.addObserver(self, forKeyPath: obk2, options: .new, context: nil)
// 把進度條layer 加到底層的的layer上
view.layer.addSublayer(progress)
// 然後在有新值變化的時候改變 起點位置 和終點位置就好了
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
guard let keyPath = keyPath, let change = change else {return}
switch keyPath {
case obk1:
if let val = change[NSKeyValueChangeKey.newKey] as? Bool, !val {
delay(seconds: 0.2, completion: {
self.progress.opacity = 0
})
}
case obk2:
if let val = change[NSKeyValueChangeKey.newKey] as? CGFloat {
progress.strokeEnd = val
}
default:break
}
}
相關文章
- 【新特性速遞】進度條,進度條,進度條
- 用 jQuery 和 Bootstrap 在 WordPress 中新增進度條jQueryboot
- iOS WKWebView UI增強(上拉重新整理,JS互動,載入進度條)iOSWebViewUIJS
- Qt 進度條QT
- HTML <progress> 進度條HTML
- 學習進度條
- 簡單進度條
- Python進度條技巧Python
- canvas 畫進度條Canvas
- Linux 進度條(非100%)列出unzip進度Linux
- Android花樣loading進度條(三)-配文字環形進度條Android
- ProgressBar進度條顏色
- icp配準進度條
- Excel實現完成進度的進度條結果Excel
- canvas環形進度條效果Canvas
- 數字進度條元件NumberProgressBar元件
- 橡皮筋進度條ElasticProgressBarAST
- Python之程式碼進度條Python
- golang 進度條功能實現Golang
- psplash進度條旋轉成功
- Flutter 波浪圓形進度條Flutter
- LVGL高效顯示進度條
- Python 輸出命令列進度條Python命令列
- Ajax 處理時進度條使用
- jQuery實進度條效果詳解jQuery
- Android自定義圓形進度條Android
- ios自定義圓環進度條iOS
- carousel 輪播自定義進度條
- 58python 進度條設計Python
- 關於WPF進度條的使用
- canvas錐形漸變進度條Canvas
- laravel自定義命令列印進度條Laravel命令列
- c# 控制檯console進度條C#
- bat檔案進度條程式碼BAT
- 如何優雅的給 cp 和 mv 命令新增一個高顏值的進度條
- 短視訊商城系統,Android進度條,自定義進度條,顯示百分比Android
- 直播平臺軟體開發,讓原本沒有進度條的頁面顯示進度條
- JavaScript 動態進度條效果詳解JavaScript