关于webView的使用方法还是比较简单的。
直接上代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
@interface ViewController () <UIWebViewDelegate>//使用代理
{
    UIWebView *webView;
    UIView *_coverView;
    UIActivityIndicatorView *_activityIndicator;//风火轮
}
 
@end
 
@implementation ViewController
 
- (void)viewDidLoad {
    [super viewDidLoad];
     
    //获取当前屏幕的宽高
    int ScreenHeight = [[UIScreen mainScreen] bounds].size.height;
    int ScreenWidth = [[UIScreen mainScreen] bounds].size.width;
     
    //获取状态栏的高度
    CGRect statusBarRect = [[UIApplication sharedApplication] statusBarFrame];
    int statusBarHeight = statusBarRect.size.height;
     
    //设置状态栏的尺寸,位置
    webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, statusBarHeight, ScreenWidth, ScreenHeight - statusBarHeight)];
    //设置请求的URL
    NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.baidu.com"]];
    [self.view addSubview:webView];
    //设置webView的代理
    webView.delegate = self;
    //加载这个URL
    [webView loadRequest:request];
     
    //smallBgView
    _coverView = [[UIView alloc] initWithFrame:CGRectMake(0, statusBarHeight, ScreenWidth, ScreenHeight - statusBarHeight)];
    _coverView.backgroundColor = [UIColor blackColor];
    _coverView.alpha = 0.5;
     
    //Activity Indicator
    _activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake((ScreenWidth - 30)/2 , (ScreenHeight - statusBarHeight - 30)/2, 30, 30)];
    _activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleGray;
    _activityIndicator.hidesWhenStopped = YES;
    _activityIndicator.color = [UIColor whiteColor];
    _activityIndicator.alpha = 1.0;
    [_coverView addSubview:_activityIndicator];
     
}
 
//在webView开始加载时会调用该函数,我们在这里显示coverView
- (void)webViewDidStartLoad:(UIWebView *)webView
{
    [self.view addSubview:_coverView];
    [_activityIndicator startAnimating];
}
 
//在webView加载完毕时会调用该函数,我们在这里把coverView移除掉
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    [_coverView removeFromSuperview];
    [_activityIndicator stopAnimating];
}

看下演示效果

放个demo,供大家联系
WebViewTest

本文永久地址:http://blog.it985.com/7529.html
本文出自 IT985博客 ,转载时请注明出处及相应链接。

iOS 关于webView的使用方法的更多相关文章

  1. IOS修改webView背景透明以及IOS调用前台js的方法

    工作上遇到IOS的webView中的H5页面需要透明以显示webView的背景颜色.用H5自身的透明度的css样式或者js控制背景颜色及透明度都打不到想要的效果,最后还是通过ios设置webView中 ...

  2. webview javascript 注入方法

    Android中向webview注入js代码可以通过webview.loadUrl("javascript:xxx")来实现,然后就会执行javascript后面的代码. 但是当需 ...

  3. 【Android】webview javascript 注入方法

    Android中向webview注入js代码可以通过webview.loadUrl("javascript:xxx")来实现,然后就会执行javascript后面的代码. 但是当需 ...

  4. iOS AFNetworking内存泄漏处理方法

    iOS AFN内存泄漏处理方法 细心的你是否也发现AFN的内存泄漏的问题了呢. 在这里给大家提供一个解决AFN内存泄漏的方法. 单例解决AFN内存泄漏 + (AFHTTPSessionManager ...

  5. iOS 利用webView加载html代码,在代理中获取html页面的链接时出现的问题

    getDetailWebview.loadHTMLString(webViewData as String, baseURL:NSURL(string: "\(ProBaseWeb)&quo ...

  6. ios 修改webView字体

    UIFont *font = [UIFont systemFontOfSize:]; //方法一 NSString *fontColor =@"CCCCFF"; NSString ...

  7. js 与ios 交互的三种方法

    第一种:IOS拦截url  实现跳转 参考链接:http://www.cnblogs.com/pengyingh/articles/2354381.html IOS9.0 及以上支持 第二种:IOS ...

  8. IOS 获取最新设备型号方法

    1.IOS 获取最新设备型号方法列表最新对照表:http://theiphonewiki.com/wiki/Models方法: #import "sys/utsname.h” struct ...

  9. 李洪强iOS开发Swift篇—10_方法

    李洪强iOS开发Swift篇—10_方法 一.简单说明 跟其他面向对象语言一样,Swift中的方法可以分为2大类: (1)实例方法(Instance Methods) 在OC中,实例方法以减号(-)开 ...

随机推荐

  1. 修改oracle用户密码永不过期

    1.查看用户的proifle是哪个,一般是default: sql>SELECT username,PROFILE FROM dba_users; 2.查看指定概要文件(如default)的密码 ...

  2. Eclipse 启动Tomcat后web项目的classes的子文件夹中没有calss文件

    Eclipse 启动Tomcat后web项目的classes的子文件夹中没有calss文件. 经网上查得以下方法可解决 把properties属性里的java compiler-->buildi ...

  3. GLES & Shader Language 易错集锦

    1. vertex shader 和 fragment shader 通过varying变量传递数据,  如下代码在编译fragment shader时候会提示编译错误 vertex shader F ...

  4. javascript代码复用模式(三)

    前面谈到了javascript的类式继承.这篇继续部分类式继承,及一些现代继承. 类式继承模式-代理构造函数 这种模式通过断开父对象与子对象之间原型之间的直接链接关系,来解决上次说到的共享一个原型所带 ...

  5. Nodejs笔记(二)

    Nodejs事件 Node.js 所有的异步I/O 操作在完成时都会发送一个事件到事件队列. Node.js里面的许多对象都会分发事件:一个net.Server对象会在每次有新连接时分发一个事件, 一 ...

  6. [drp 2]String、StringBuffer和StringBuilder的区别

    导读:在实际运用了,我们会频繁的用到string.stringBuffer和stringBuilder这三个东西,那么,他们之间的区别是什么呢.本文主要是从拼写SQL语句的角度,来阐释他们之间的区别! ...

  7. MFC启动和关闭线程

    1. 启动线程: CWinThread* AfxBeginThread( 线程函数,this ); 2.通常导致线程终止的两种情况是:控制函数退出或不允许线程完成运行.如果字处理器使用后台打印线程,若 ...

  8. sorcketlog

    正在运行的API有bug,不能var_dump进行调试,因为会影响client的调用. 将日志写到文件,查看也不方便,特别是带调用栈或大数据结构的文件日志,查看日志十分困难. 这时候用SocketLo ...

  9. MVC_学习笔记_2_Authorize

    MVC5_学习笔记_2_Authorize/* GitHub stylesheet for MarkdownPad (http://markdownpad.com) *//* Author: Nico ...

  10. Windows Phone 显示长文本

    文采不好,将就着看,见谅 思路最重要,故本文不提供源码下载 参考项目: http://www.windowsphone.com/zh-cn/store/app/%E5%BF%83%E7%90%86fm ...