您的位置:首页 > 移动开发

iOS使用WebView简单地应用内显示网页

2016-05-27 11:29 561 查看
iOS支持的应用内显示网页的方法有多种,有的还会自动提供下方的工具栏,这里说明最简单的一种:使用WebView来快速实现应用内显示网页内容。

UIWebView是iOS自带的一种浏览网页的UI控件,我们在.m文件中创建一个实例:

@interface ViewController ()

@property (nonatomic, strong) UIWebView *webView;

@end


然后在viewDidLoad方法中初始化这个WebView实例,并设置其要访问的网站的URL,然后将其添加到视图中去:

- (void)viewDidLoad {
[super viewDidLoad];

self.webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, SCREENWIDTH, SCREENHEIGHT)];
NSURLRequest *request =[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.baidu.com"]];
[self.view addSubview: self.webView];
[self.webView loadRequest:request];
}


这样其实就完成了,非常简单快捷。

但是其实在iOS 9下还有一个问题,那就是iOS默认要求所有访问必须基于https协议,所以现在直接运行会访问失败,解决方法是在Info.plist文件中添加支持http协议的声明,方法如下:

我们右键Info.plist文件,选择Open as Source Code,添加如下代码:

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>


或者也可以直接在plist列表中添加Dictionary格式的NSAppTransportSecurity,然后在其下添加Boolean格式的Allow Arbitrary Loads,并设为YES。

这样我们的app就可以支持http协议了,再次运行即可正常访问URL链接的网页了,如下图所示:



可以在这里下载我的示例工程:https://github.com/Cloudox/WebViewDemo

版权所有:http://blog.csdn.net/cloudox_
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: