加载webView

1.创建UIWebView,为其配置request


UIWebView *webView = [[UIWebViewalloc]initWithFrame:CGRectMake(0,20,kScreenWidth,kScreenHeight)];

    NSURLRequest *request = [[NSURLRequestalloc]initWithURL:[NSURLURLWithString:@"http://write.blog.csdn.net/postlist"]];

    webView.delegate =self;

    [self.viewaddSubview:webView];

    [webView loadRequest:request];


2.在类中鉴定<UIWebVIewDelegate>,并设置代理为self



3.实现代理方法,用来检测 开始加载,加载完成,加载失败


- (void)webViewDidStartLoad:(UIWebView *)webView;  //开始加载

- (void)webViewDidFinishLoad:(UIWebView *)webView;  //加载完成

- (void)webView:(UIWebView *)webView didFailLoadWithError:(nullableNSError *)error;  //加载失败


4.为了提升用户体验,由于网速的慢的原因,需要让用户知道此时是否正在加载


#pragma - mark webView的代理方法

- (void)webViewDidStartLoad:(UIWebView *)webView;{

    

      //创建UIActivityIndicatorView背底半透明View

    UIView *view = [[UIViewalloc] initWithFrame:self.view.frame];

    [view setTag:108];

    [view setBackgroundColor:[UIColorblackColor]];

    [view setAlpha:0.5];

    [self.viewaddSubview:view];

    

    UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorViewalloc] initWithFrame:CGRectMake(0.0f,0.0f, 32.0f, 32.0f)];

    [activityIndicator setCenter:view.center];

    [activityIndicator setActivityIndicatorViewStyle:UIActivityIndicatorViewStyleWhite];

    activityIndicator.tag =102;

    [view addSubview:activityIndicator];

    

    [activityIndicator startAnimating];

    

    NSLog(@"webViewStartLoad");


    

}

- (void)webViewDidFinishLoad:(UIWebView *)webView;{

    

    UIActivityIndicatorView *activityIndicator = [self.viewviewWithTag:102];

    

    [activityIndicator stopAnimating];

    UIView *view = (UIView*)[self.viewviewWithTag:108];

    [view removeFromSuperview];

    NSLog(@"webViewDidFinishLoad");

    

}

- (void)webView:(UIWebView *)webView didFailLoadWithError:(nullableNSError *)error;{

    

    UIActivityIndicatorView *activityIndicator = [self.viewviewWithTag:102];

    

    [activityIndicator stopAnimating];

    UIView *view = (UIView*)[self.viewviewWithTag:108];

    [view removeFromSuperview];

    

    NSLog(@"webViewdidFailLoad");


}




整理和参考容芳志的技术博客  http://blog.csdn.net/totogo2010/article/details/7686164


阅读更多
文章标签: webview uiwebview
个人分类: iOS开发
上一篇iOS9 http 网络请求
下一篇iOS 3D touch 开发
想对作者说点什么? 我来说一句

android webview

2013年10月19日 40KB 下载

NJKWebViewProgress

2017年07月17日 270KB 下载

加载进度条的WebView

2014年12月01日 1.39MB 下载

WebView简单使用Demo

2017年06月18日 20.45MB 下载

webview 直接加载JS

2015年03月31日 248KB 下载

webviewCacheDemo

2016年12月18日 24.43MB 下载

webview加载

2011年11月06日 589B 下载

webView加载进度条显示

2015年11月15日 1.37MB 下载

android 加载应用js

2015年08月21日 2.49MB 下载

webwive与js简单交互

2014年08月29日 2KB 下载

没有更多推荐了,返回首页

关闭
关闭