UIWebView  是用来加载加载网页数据的一个框。UIWebView可以用来加载pdf、word、doc 等等文件

生成webview 有两种方法,1、通过storyboard 拖拽  2、通过alloc init 来初始化

创建webview,下列文本中 _webView.dataDetectorTypes = UIDataDetectorTypeAll; 是识别webview中的类型,例如 当webview中有电话号码,点击号码就能直接打电话

- (UIWebView *)webView   {
if (!_webView) {
_webView = [[UIWebView alloc] initWithFrame:self.view.bounds];
_webView.dataDetectorTypes = UIDataDetectorTypeAll;
}
return _webView;
}

加载网页

// 让浏览器加载指定的字符串,使用m.baidu.com进行搜索
- (void)loadString:(NSString *)str {
// 1. URL 定位资源,需要资源的地址
NSString *urlStr = str;
if (![str hasPrefix:@"http://"]) {
urlStr = [NSString stringWithFormat:@"http://m.baidu.com/s?word=%@", str];
} NSURL *url = [NSURL URLWithString:urlStr]; // 2. 把URL告诉给服务器,请求,从m.baidu.com请求数据
NSURLRequest *request = [NSURLRequest requestWithURL:url]; // 3. 发送请求给服务器
[self.webView loadRequest:request];
}

加载html

    // HTML是网页的设计语言
// <>表示标记</>
// 应用场景:截取网页中的某一部分显示
// 例如:网页的完整内容中包含广告!加载完成页面之后,把广告部分的HTML删除,然后再加载
// 被很多新闻类的应用程序使用
[self.webView loadHTMLString:@"<p>Hello</p>" baseURL:nil];

加载本地文件

#pragma mark - 加载文件
- (void)loadFile {
// 应用场景:加载从服务器上下载的文件,例如pdf,或者word,图片等等文件
NSURL *fileURL = [[NSBundle mainBundle] URLForResource:@"关于.txt" withExtension:nil]; NSURLRequest *request = [NSURLRequest requestWithURL:fileURL]; [self.webView loadRequest:request];
}

以二级制的方式加载本地文件

#pragma 以二进制数据的形式加载文件
- (void)loadDataFile {
// 最最常见的一种情况
// 打开IE,访问网站,提示你安装Flash插件
// 如果没有这个应用程序,是无法用UIWebView打开对应的文件的 // 应用场景:加载从服务器上下载的文件,例如pdf,或者word,图片等等文件
NSURL *fileURL = [[NSBundle mainBundle] URLForResource:@"iOS 7 Programming Cookbook.pdf" withExtension:nil]; NSURLRequest *request = [NSURLRequest requestWithURL:fileURL];
// 服务器的响应对象,服务器接收到请求返回给客户端的
NSURLResponse *respnose = nil; NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&respnose error:NULL]; NSLog(@"%@", respnose.MIMEType); // 在iOS开发中,如果不是特殊要求,所有的文本编码都是用UTF8
// 先用UTF8解释接收到的二进制数据流
[self.webView loadData:data MIMEType:respnose.MIMEType textEncodingName:@"UTF8" baseURL:nil];
}

iOS之webview加载网页、文件、html的方法的更多相关文章

  1. WebView加载网页文件

    转自:http://www.2cto.com/kf/201108/101518.html WebView(网络视图)能加载显示网页,可以将其视为一个浏览器.它使用了WebKit渲染引擎加载显示网页,实 ...

  2. iOS使用webView 加载网页,在模拟器中没有问题,而真机却白屏了。App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist f

    还在info.plist中配置.除了配置允许上网的配置之外,还有另一项.

  3. WebView 加载网页 加载资源 总结 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  4. WebView 加载网页和java 与js交互

    [mw_shl_code=java,true]WebView是一个可以显示网页的控件.需求:通过WebView加载assets下的html文件.实现页面的缩放.向menu键添加:前进.后退和刷新,实现 ...

  5. Android中Http加载如何得到Cookie和 WebView 加载网页如何得到的Cookie

    最近做项目在手机端登录Http请求和 WebView 记载登录获取Cookie信息,可查看Cookie信息. 如图: Http请求获取Cookie信息: public static String re ...

  6. webView 加载本地文件 - html/htm pdf docx tx

    - (void)viewDidLoad { [super viewDidLoad]; [self setupUI]; NSString *path = [[NSBundle mainBundle] p ...

  7. java加载properties文件的六种方法总结

    java加载properties文件的六种方法总结 java加载properties文件的六中基本方式实现 java加载properties文件的方式主要分为两大类:一种是通过import java. ...

  8. iOS使用webView加载HTML网页链接简单展示

    //网页视图 _webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 64, mWidth, mHeight-64)]; _webView.d ...

  9. 【iOS】WebView加载HTML图片大小自适应与文章自动换行

    在很多App中都会使用到webview,尤其是在加载新闻内容等文章形式的数据时.因为图文混编以及不同字体格式的显示,在iOS进行编辑 和显示都是一大问题(当然,iOS中也可以用CoreText进行绘制 ...

随机推荐

  1. Android MediaPlayer播放音乐并实现进度条

    提前工作,往sd卡里放音乐文件 1.布局文件main.xml <?xml version="1.0" encoding="utf-8"?> < ...

  2. arcgis 线段合并

    对于上面这种这种有一个字段相同的 线段,使用 使用后生成的矢量如下

  3. PHP discuz模板语法

    Discuz! X 模板的解析主要是 ./source/class/class_template.php 文件解析处理的,如果需要深入了解请可以看看这个文件! 模板嵌套语法 将被嵌套模板内容解析为 P ...

  4. BASE64编码的字符进行URL传输丢失特殊字符的问题

    因为BASE64的编码里含有“+”号等特殊字符,在url传输的时候会把+号编程空格,解决这个问题的方法: 请求时把BASE64编码进行url的编码再进行传输 接收时把BASE64编码进行url的解码 ...

  5. sqlserver中循环生成记录

    declare @i int set @i=1 while(@i<=10) begin INSERT INTO [BMData].[dbo].[QueryBlackListLogs] ([ID] ...

  6. easyui的解析器Parser

    平时使用easyui做框架开发时,都知道easyui的模块组件能通过属性方法或js方法来渲染,本质上是通过parser解析器来处理实现的,因为多数情况下都是自动触发完成整个页面的解析,所以没有感觉到它 ...

  7. mongodb时间点备份恢复

    1:创建测试数据 > use maxiangqian switched to db maxiangqian "}) WriteResult({ "nInserted" ...

  8. 一、docker学习笔记——安装docker

    系统win10 企业版 1.下载docker CE 2.安装.注意,由于docker 与Oracle VM VirtualBox 冲突,在windows平台上二者不可共存.你只能2选1!! 3.如果d ...

  9. python 切片&迭代

    Python提供了切片(Slice)操作符L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']取前3个元素>>> L[0:3]['Mich ...

  10. jclass和jobject的迷惑

    [译]jclass和jobject 2012-09-18 15:02:58|  分类: Android |字号 订阅   jclass和jobject的迷惑第一次使用JNI,实例引用(jobject) ...