WKWebView添加進(jìn)度條

1.導(dǎo)入頭文件

#import <WebKit/WebKit.h>

2.創(chuàng)建WKWebView和ProcessView, 并且添加觀察者,代理WKUIDelegate,WKNavigationDelegate

@property (strong, nonatomic) WKWebView *webView;

@property (strong, nonatomic) UIProgressView *progressView;

- (void)viewDidLoad {

[super viewDidLoad];

self.webView = [[WKWebView alloc] initWithFrame:self.view.bounds];

self.webView.UIDelegate = self;

self.webView.navigationDelegate = self;

[self.view addSubview:self.webView];

self.progressView = [[UIProgressView alloc]initWithFrame:CGRectMake(0, 64, CGRectGetWidth(self.view.frame),2)];

[self.view addSubview:self.progressView];

[self.webView addObserver:self forKeyPath:@"estimatedProgress" options:NSKeyValueObservingOptionNew| NSKeyValueObservingOptionOld context:nil];

[self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.baidu.com"]]];

}

3. 實(shí)現(xiàn)代理方法

-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary*)change context:(void *)context

{

if ([keyPath isEqual: @"estimatedProgress"] && object == self.webView) {

[self.progressView setAlpha:1.0f];

[self.progressView setProgress:self.webView.estimatedProgress animated:YES];

if(self.webView.estimatedProgress >= 1.0f)

{

[UIView animateWithDuration:0.3 delay:0.3 options:UIViewAnimationOptionCurveEaseOut animations:^{

[self.progressView setAlpha:0.0f];

} completion:^(BOOL finished) {

[self.progressView setProgress:0.0f animated:NO];

}];

}

}

else {

[super observeValueForKeyPath:keyPath ofObject:object change:change context:context];

}

}

4.移除觀察者

- (void)dealloc {

[self.webView removeObserver:self forKeyPath:@"estimatedProgress"];

[self.webView setNavigationDelegate:nil];

[self.webView setUIDelegate:nil];

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容