UIWebView progress interface
NJKWebViewProgress is a progress interface library for UIWebView. Currently, UIWebView doesn't have official progress interface. You can implement progress bar for your in-app browser using this module.
NJKWebViewProgress doesn't use CocoaTouch's private methods. It's AppStore safe.
Instance
NJKWebViewProgressand set
UIWebViewDelegate. If you set
webViewProxyDelegate,
NJKWebViewProgressshould perform as a proxy object.
_progressProxy = [[NJKWebViewProgress alloc] init]; // instance variable webView.delegate = _progressProxy; _progressProxy.webViewProxyDelegate = self; _progressProxy.progressDelegate = self;
When UIWebView start loading,
NJKWebViewProgresscall delegate method and block with progress.
objc -(void)webViewProgress:(NJKWebViewProgress *)webViewProgress updateProgress:(float)progress { [progressView setProgress:progress animated:NO]; }
progressProxy.progressBlock = ^(float progress) { [progressView setProgress:progress animated:NO]; };
You can determine the current state of the document by comparing the
progressvalue to one of the provided constants:
-(void)webViewProgress:(NJKWebViewProgress *)webViewProgress updateProgress:(float)progress { if (progress == NJKInteractiveProgressValue) { // The web view has finished parsing the document, // but is still loading sub-resources } }
This repository contains iOS 7 Safari style bar
NJKWebViewProgressView. You can choose
NJKWebViewProgressView,
UIProgressViewor your custom bar.
pod 'NJKWebViewProgress'