UIWebView---iOS-Apple苹果官方文档翻译
UIWebView---iOS-Apple苹果官方文档翻译

• 是iOS内置的浏览器控件,可以浏览网

• 服务器通过说明多媒体数据的MIME类型,告诉浏览器发送的多媒体 数据的类型,从而让浏览器知道接收到的信息哪些是MP3文件,哪些 是Shockwave文件等等
• 服务器将MIME标志符放入传送的数据中告诉浏览器使用哪种插件读 取相关文件
• MIME类型能包含视频、图像、文本、音频、应用程序等数据

// 获得本地文件的MIMEType
{

// 定义路径 NSString *path = [[NSBundlemainBundle]pathForResource:fileName ofType:nil];
// 定义URL NSURL *url = [NSURL fileURLWithPath:path];
// 定义请求 NSURLRequest *request = [NSURLRequestrequestWithURL: url];
// 定义响应 NSURLResponse *response = nil;
// 发送同步请求 [NSURLConnectionsendSynchronousRequest:requestreturningResponse:&response
error:nil];
NSLog(@"MIMEType is %@", [response MIMEType]);
return [response MIMEType]; }


• gotoURLString方法由文本框回车事件调用,为了 方便用户加载本地文件

// 访问指定的URL内容 - (void)gotoURL:(NSURL*)url {
// 使用URL字符串替代URL文本框 [_urlText setText:[url absoluteString]];
// 定义请求
NSURLRequest *request = [NSURLRequestrequestWithURL:url]; // 设置数据检测类型[_webViewsetDataDetectorTypes:UIDataDetectorTypeAll];
// 加载请求
[_webView loadRequest:request]; }



UIWebView--加载本地文本文件和Word文档



UIWebView--加载本地PDF文件


NSString *html = @"
Hello chenyilong
";
[_webView loadHTMLString:htmlbaseURL:nil];
// 测试加载部分HTML字符串,不需要显示整个网页内容时,通常使用此方法 NSString *partHtml = @"
Hello chenyilong
[_webView loadHTMLString:partHtmlbaseURL:nil];

// 测试加载本地PDF,需要指定MIMETYPE ......
[_webView loadData:[NSDatadataWithContentsOfFile:dataPath]MIMEType:@"application/pdf"textEncodingName:@"UTF-8" baseURL:nil];
// 测试加载本地文本文件,需要指定MIMETYPE ......
[_webView loadData:[NSDatadataWithContentsOfFile:dataPath]MIMEType:@"text/plain" textEncodingName:@"UTF-8"baseURL:nil];
// 测试加载本地HTML文件,需要指定MIMETYPE
......
NSURL *baseURL = [NSURL fileURLWithPath:[[NSBundle mainBundle]resourcePath]isDirectory:YES];
[_webView loadData:[NSDatadataWithContentsOfFile:dataPath]MIMEType:@"text/html" textEncodingName:@"UTF-8"baseURL:baseURL];
说明:baseURL是基准URL,程序要用到其他资源的位置
// 网页开始加载的时候调用
- (void)webViewDidStartLoad:(UIWebView*)webView
// 网页加载完成的时候调用
- (void)webViewDidFinishLoad:(UIWebView*)webView
// 网页加载出错的时候调用
- (void)webView:(UIWebView *)webView didFailLoadWithError: (NSError *)error
// 网页中的每一个请求都会被触发这个方法,返回NO代表不执行这个请求(常 用于JS与iOS之间通讯)
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
// 获取当前页面的url
NSString *url = [_webViewstringByEvaluatingJavaScriptFromString:@"document.location.href"];
NSLog(@"url %@", url);
// 获取当前页面的标题 NSString *title = [_webView
stringByEvaluatingJavaScriptFromString:@"document.title"];NSLog(@"title %@", title);
// 提交表单
[_webViewstringByEvaluatingJavaScriptFromString:@"document.forms[0].submit(); "];
• UIWebView是内置浏览器控件,能够加载html、pdf、txt等多种格式文件
• 常用加载方法: - loadRequest:
- loadHTMLString:baseURL:
- loadData:MIMEType:textEncodingName:baseURL:
• 常用导航方法:
- goBack - 回退
- goForward - 前进
- reload - 重载
- stopLoading - 取消载入内容
• 常用属性:
- scalespageToFit - 自动对页面进行缩放以适应屏幕
- dataDetectorTypes - 设定电话号码、网址、电子邮件和日期等文字变为链接文字
• 浏览器通过MIME标志符可以知道使用哪种插件读取相关文件 • iOS可以直接调用js代码与页面通讯

UIWebView---iOS-Apple苹果官方文档翻译的更多相关文章
- iOS数据存取---iOS-Apple苹果官方文档翻译
CHENYILONG Blog iOS数据存取---iOS-Apple苹果官方文档翻译 数据存取/*技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http:// ...
- iOS网络基础---iOS-Apple苹果官方文档翻译
CHENYILONG Blog iOS网络基础---iOS-Apple苹果官方文档翻译 iOS网络基础 技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http: ...
- iOS静态库 ---iOS-Apple苹果官方文档翻译
iOS静态库 ---iOS-Apple苹果官方文档翻译 •什么是库? 库是共享程序代码的方式,一般分为静态库和动态库.静态库与动态库的区别? 静态库:链接时完整地拷贝至可执行文件中,被多次使⽤用就为什 ...
- IOS开发苹果官方Sample Code及下载地址
IOS开发苹果官方Sample Code及下载地址 在线浏览地址:https://developer.apple.com/library/ios/navigation/#section=Resourc ...
- CALayer---iOS-Apple苹果官方文档翻译之CALayer
CHENYILONG Blog CALayer---iOS-Apple苹果官方文档翻译之CALayer CALayer /*技术博客http://www.cnblogs.com/ChenYilong/ ...
- NSURLSession---iOS-Apple苹果官方文档翻译
CHENYILONG Blog NSURLSession---iOS-Apple苹果官方文档翻译 NSURLSession 技术博客http://www.cnblogs.com/ChenYilong/ ...
- iOS程序启动原理---iOS-Apple苹果官方文档翻译
本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址 //转载请注明出处--本文永久链接:http://www.cnblogs.com/Ch ...
- 基本控件文档-UITableView---iOS-Apple苹果官方文档翻译
//转载请注明出处--本文永久链接:http://www.cnblogs.com/ChenYilong/p/3496969.html 技术博客http://www.cnblogs.com/ChenYi ...
- 基本控件文档-UITextField属性---iOS-Apple苹果官方文档翻译
本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址 //转载请注明出处--本文永久链接:http://www.cnblogs.com/Ch ...
随机推荐
- Windows下基于http的git服务器搭建-gitstack
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Windows下基于http的git服务器搭建-gitstack 本文地址:http: ...
- PictureBox使用异常
PictureBox的使用 代码: 显示部分 当我切换不同位置之间的照片时,出现这种问题: 但是当我代码改成下面的代码时,则错误消除 但我并不清楚原因
- javascript之彻底理解prototype
prototype很简单, 就是提供一种引用的机制. let BaseObject = { toString(){ return this.str; }, }; let Object1 = {str: ...
- idea 复制数据库查询结果,粘贴直接生成insert into 语句
遇到一个场景,需要将数据库查询的结果导入到另外一个数据库中,给我的第一感受是,写程序,从数据库A中获取到数据,在插入到数据库B中. 但是Idea 可以直接复制查询结果,然后粘贴生成insert语句. ...
- 【bzoj4425】[Nwerc2015]Assigning Workstations分配工作站 贪心+堆
题目描述 佩内洛普是新建立的超级计算机的管理员中的一员. 她的工作是分配工作站给到这里来运行他们的计算研究任务的研究人员. 佩内洛普非常懒惰,不喜欢为到达的研究者们解锁机器. 她可以从在她的办公桌远程 ...
- CSS预处理语言-less 的使用
Less 是一门 CSS 预处理语言,它扩展了 CSS 语言,增加了变量.Mixin.函数等特性,使 CSS 更易维护和扩展. Less 可以运行在 Node 或浏览器端. Less的编译处理 作为一 ...
- windows200364位iis6 php环境搭建
最近接一个小活,就是帮着部署个php网站,服务器是window2003,iis6.之前在我自己得服务器上已经搭建过php环境,区别是我的服务器windows2012,而对方的是windows 2003 ...
- P3386 【模板】二分图匹配
题目背景 二分图 题目描述 给定一个二分图,结点个数分别为n,m,边数为e,求二分图最大匹配数 输入输出格式 输入格式: 第一行,n,m,e 第二至e+1行,每行两个正整数u,v,表示u,v有一条连边 ...
- Eclipse如何将代码变成大写/小写
代码变小写:选中要换的代码,操作Ctrl+Shift+y即可将大写变小写 代码变大写:选中要换的代码,操作Ctrl+Shift+x即可将小写变大写
- BZOJ3771 Triple 【NTT + 容斥】
题目链接 BZOJ3771 题解 做水题放松一下 先构造\(A_i\)为\(x\)指数的生成函数\(A(x)\) 再构造\(2A_i\)为指数的生成函数\(B(x)\) 再构造\(3A_i\)为指数的 ...