iOS编程 -- webView的使用
2016-01-07 19:32
507 查看
webView:网页视图
使用webView需要签订代理协议,并设置好代理 UIWebViewDelegate
webView加载数据的三种方式
- (void)loadRequest:(NSURLRequest *)request;
//加载一个请求
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL;
//加载一个HTML字符串
- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)textEncodingName baseURL:(NSURL *)baseURL;
webView加载数据的具体过程
// 直接添加网页网址
- (void)loadData1
{
// 初始化添加一个网页地址
NSURL *url = [NSURL
URLWithString:@"http://baike.baidu.com/link?url=tEta3QQRmLQEdPbzXUSJB0Xqhp48NCJxrm8DaY5DfcA1Zn115pzC9Hhy4zrXXZkFiMUM99gUZrvX_CznjRjGwRjaNfowxIjUBWleXusQwZm"];
// 初始化一个加载网络页面的请求
NSURLRequest *request = [NSURLRequest
requestWithURL:url];
// 给webView加载数据
[_webView
loadRequest:request];
}
// 添加一个网页的模板,可修改文本布局,可自行添加文本数据
- (void)loadData2
{
// - (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL; //加载一个HTML字符串
// 1.获取html文件路径
NSString *path = [[NSBundle
mainBundle]
pathForResource:@"news"
ofType:@"html"];
// 2.将html文件转换成字符串
准备接收数据
NSString *dataString = [[NSString
alloc]
initWithContentsOfFile:path
encoding:NSUTF8StringEncoding
error:nil];
/*
可修改布局
<div class="whiteTitle">
// 文本型号
文本对其方式
<p><h1 style="text-align:center;">%@</h1></p>
<hr /> //添加水平线
</div>
*/
// 3.向html文件转换成的字符串填充数据
NSString *htmlStr = [NSString
stringWithFormat:dataString,@"今天星期一",@"今天星期2",@"今天星期三",@"今天星期四",@"55555"];
// 4.加载数据
[_webView
loadHTMLString:htmlStr
baseURL:nil];
}
// 直接添加带有数据的网页模板
- (void)loadData3
{
// 获取html文件的路径
NSString *path = [[NSBundle
mainBundle]
pathForResource:@"weibo"
ofType:@"html"];
// 获取html文件里的数据
NSData *data = [NSData
dataWithContentsOfFile:path];
// 加载数据
[_webView
loadData:data
MIMEType:nil
textEncodingName:nil
baseURL:nil];
}
代理协议的4个可选择实现的方法
@optional
// 将要开始加载请求时调用
- (BOOL)webView:(UIWebView
*)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
// 网页开始加载时调用
- (void)webViewDidStartLoad:(UIWebView
*)webView;
// 网页加载完成时调用
- (void)webViewDidFinishLoad:(UIWebView
*)webView;
// 网页加载失败出现错误时调用
- (void)webView:(UIWebView
*)webView didFailLoadWithError:(NSError *)error;
使用webView需要签订代理协议,并设置好代理 UIWebViewDelegate
webView加载数据的三种方式
- (void)loadRequest:(NSURLRequest *)request;
//加载一个请求
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL;
//加载一个HTML字符串
- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)textEncodingName baseURL:(NSURL *)baseURL;
webView加载数据的具体过程
// 直接添加网页网址
- (void)loadData1
{
// 初始化添加一个网页地址
NSURL *url = [NSURL
URLWithString:@"http://baike.baidu.com/link?url=tEta3QQRmLQEdPbzXUSJB0Xqhp48NCJxrm8DaY5DfcA1Zn115pzC9Hhy4zrXXZkFiMUM99gUZrvX_CznjRjGwRjaNfowxIjUBWleXusQwZm"];
// 初始化一个加载网络页面的请求
NSURLRequest *request = [NSURLRequest
requestWithURL:url];
// 给webView加载数据
[_webView
loadRequest:request];
}
// 添加一个网页的模板,可修改文本布局,可自行添加文本数据
- (void)loadData2
{
// - (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL; //加载一个HTML字符串
// 1.获取html文件路径
NSString *path = [[NSBundle
mainBundle]
pathForResource:@"news"
ofType:@"html"];
// 2.将html文件转换成字符串
准备接收数据
NSString *dataString = [[NSString
alloc]
initWithContentsOfFile:path
encoding:NSUTF8StringEncoding
error:nil];
/*
可修改布局
<div class="whiteTitle">
// 文本型号
文本对其方式
<p><h1 style="text-align:center;">%@</h1></p>
<hr /> //添加水平线
</div>
*/
// 3.向html文件转换成的字符串填充数据
NSString *htmlStr = [NSString
stringWithFormat:dataString,@"今天星期一",@"今天星期2",@"今天星期三",@"今天星期四",@"55555"];
// 4.加载数据
[_webView
loadHTMLString:htmlStr
baseURL:nil];
}
// 直接添加带有数据的网页模板
- (void)loadData3
{
// 获取html文件的路径
NSString *path = [[NSBundle
mainBundle]
pathForResource:@"weibo"
ofType:@"html"];
// 获取html文件里的数据
NSData *data = [NSData
dataWithContentsOfFile:path];
// 加载数据
[_webView
loadData:data
MIMEType:nil
textEncodingName:nil
baseURL:nil];
}
代理协议的4个可选择实现的方法
@optional
// 将要开始加载请求时调用
- (BOOL)webView:(UIWebView
*)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
// 网页开始加载时调用
- (void)webViewDidStartLoad:(UIWebView
*)webView;
// 网页加载完成时调用
- (void)webViewDidFinishLoad:(UIWebView
*)webView;
// 网页加载失败出现错误时调用
- (void)webView:(UIWebView
*)webView didFailLoadWithError:(NSError *)error;
相关文章推荐
- iOS 添加 framework 报缺少头文件
- 一只入了IOS深坑的汪
- iOS企业级开发
- RedHat 6.5(x86_64)启动nagios客户端nrpe报错的解决方法
- IOS-0811按钮操作(笔记)
- iOS -- 界面跳转--常遇到的bug
- ios代码分块管理的一些方法
- 在iOS7中修改状态栏字体的颜色
- iOS划线代码
- ios iPhone的一些基础知识,扫盲
- iOS倒计时,显示剩余天、时、分、秒
- iOS 解决LaunchScreen中图片加载黑屏问题
- RedHat 6.5(x86_64)启动nagios客户端nrpe报错的解决方法
- iOS常见手势总结-单击、双击、捏合、旋转、移动、清扫、长按
- iOS 支付宝的使用
- IOS项目分层
- iOS开发零碎笔记
- iOS开发常用的第三方类库
- iOS开发官方文档
- iOS常见错误之exc_bad_access 野指针错误