NJKWebViewProgress 0.2.3

NJKWebViewProgress 0.2.3

LangLanguage Obj-CObjective C
License MIT
ReleasedLast Release Dec 2014

Maintained by Unclaimed.

  • By
  • ninjinkun

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.

iOS ScreenShot 1

NJKWebViewProgress doesn't use CocoaTouch's private methods. It's AppStore safe.

Used in Production


  • iOS 4.3 or later
  • ARC


Instance NJKWebViewProgress and set UIWebViewDelegate. If you set webViewProxyDelegate, NJKWebViewProgress should perform as a proxy object.

_progressProxy = [[NJKWebViewProgress alloc] init]; // instance variable
webView.delegate = _progressProxy;
_progressProxy.webViewProxyDelegate = self;
_progressProxy.progressDelegate = self;

When UIWebView start loading, NJKWebViewProgress call delegate method and block with progress.

-(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 progress value 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, UIProgressView or your custom bar.



MIT license.