Show progress bar until it load the data in UIWebView IOS7

蓝咒 提交于 2019-11-29 08:50:53

You should start/stop the progressbar in webview delegate methods.

Add following line in your viewDidLoad.

webview.delegate = self;

Add following functions in your controller...

-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    //Start the progressbar.. 
    return YES;
}

-(void)webViewDidFinishLoad:(UIWebView *)webView
{
    //Stop or remove progressbar
}

-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
    //Stop or remove progressbar and show error
}

Yes why not, use UIWebView delegate method

- (void)viewDidLoad
{
   [super viewDidLoad];

   webview.delegate=self; //Assign Delegate

   [webview loadRequest:myRequest];

   [self showProgress];//Show Progress

}

Use delegates as below

- (void)webViewDidFinishLoad:(UIWebView *)webView{
    if(!webView.isLoading){ //This ensures whether the webview has finished loading..
       [self hideProgress];
    }
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{
   [self hideProgress];
}

Cheers.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!