WKWebView 进度条
来源:互联网 发布:vb页面跳转 编辑:程序博客网 时间:2024/06/16 11:27
@property (nonatomic) WKWebView *webView;@property (nonatomic) CALayer *progresslayer;//创建webView之后监听estimatedProgress属性_webView = [[WKWebView alloc]initWithFrame:self.view.bounds]; //就是当前网页加载的进度,所以首先监听这个属性。-> estimatedProgress [_webView addObserver:self forKeyPath:@"estimatedProgress" options:NSKeyValueObservingOptionNew context:nil]; UIView *progress = [[UIView alloc]initWithFrame:CGRectMake(0, 64, CGRectGetWidth(self.view.frame), 3)]; progress.backgroundColor = [UIColor clearColor]; [self.view addSubview:progress]; //隐式动画 CALayer *layer = [CALayer layer]; layer.frame = CGRectMake(0, 0, 0, 3); layer.backgroundColor = TEXTCOLOR.CGColor; [progress.layer addSublayer:layer]; self.progresslayer = layer;//监听的方法- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context { if ([keyPath isEqualToString:@"estimatedProgress"]) { self.progresslayer.opacity = 1; if ([change[@"new"] floatValue] < [change[@"old"] floatValue]) { return; } self.progresslayer.frame = CGRectMake(0, 0, self.view.bounds.size.width * [change[@"new"] floatValue], 3); if ([change[@"new"] floatValue] == 1) { dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(.4 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ self.progresslayer.opacity = 0; }); dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ self.progresslayer.frame = CGRectMake(0, 0, 0, 3); }); } } else { [super observeValueForKeyPath:keyPath ofObject:object change:change context:context]; }}//移除监听- (void)dealloc { [_webView removeObserver:self forKeyPath:@"estimatedProgress"];}
阅读全文
0 0
- WkWebView进度条
- WKWebView 进度条
- 带进度条的WKWebView
- WKWebView加载进度条(仿微信)
- IOS WKWebView初级使用 以及WKWebView进度条的添加
- iOS 给webView加进度条(WKWebView)
- iOS WKWebView添加网页加载进度条
- iOS 封装WKWebView页面带加载进度条
- iOS实现微信网页进度条,WKWebview进度条的实现
- WKWebView
- WKWebView
- WKWebView
- WKWebView
- WKWebView
- WKWebView
- WKWebView
- WKWebView
- WKWebView
- SQlite数据库(1)
- android高通平台调用恢复出厂设置的方法
- php封装好的curl操作
- linux下编译live555
- Bootstrap 3.3.7学习笔记6
- WKWebView 进度条
- java基础点
- leetCode刷题记录 Sort Colors
- 快速排序——复习
- Frament+ViewPager
- jquery全解(1)
- 模拟试——repair
- 计算机网络总结
- js中onblur和onfocus事件(用于文本框)