是iOS内置的浏览器控件,可以浏览网页、打开文档等 
能够加载html/htm、pdf、docx、txt等格式的文件 
系统自带的Safari浏览器就是通过UIWebView实现的

MIME的英文全称是“Multipurpose Internet Mail Extensions” 多用途互联网邮件扩展,是一个互联网标准,最早应用于电子邮件系统,后来应用到浏览器 
服务器通过说明多媒体数据的MIME类型,告诉浏览器发送的多媒体数据的类型,从而让浏览器知道接收到的信息哪些是MP3文件,哪些是Shockwave文件等等 
服务器将MIME标志符放入传送的数据中告诉浏览器使用哪种插件读取相关文件 
MIME类型能包含视频、图像、文本、音频、应用程序等数据

怎样获取MIMEType?

(NSString )MIMEType:(NSString )fileName
{
// 定义路径
NSString path = [[NSBundle mainBundle]pathForResource:fileName ofType:nil];
// 定义URL
NSURL url = [NSURL fileURLWithPath:path];
// 定义请求
NSURLRequest request = [NSURLRequest requestWithURL: url];
// 定义响应
NSURLResponse response = nil;

// 发送同步请求
[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];

NSLog(@“MIMEType is %@“, [response MIMEType]);

return [response MIMEType];
}

<!-- lang: cpp -->
-(NSString *)mimeType:(NSString *)fileName
{

NSString *path = [[NSBundle mainBundle] pathForResource:fileName ofType:nil ];
// NSURL *url = [[NSURL alloc] initWithString:path];

NSURL *url = [NSURL fileURLWithPath:path];
NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];
NSURLResponse *ressponse = nil ;
[NSURLConnection sendSynchronousRequest:request returningResponse:&ressponse error:nil];
return [ressponse MIMEType];
// NSURL url = [[NSBundle mainBundle] URLForResource:fileName withExtension:nil];
//
// // 2. request
// NSURLRequest request = [NSURLRequest requestWithURL:url];
//
// // 3. 同步连接
// NSURLResponse *response = nil;
//
// [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];
//
// // 4. 获得mimetyp
// return response.MIMEType;
}

// 测试加载HTML字符串
NSString *html = @“Hello

Hello Itcast

“;
[_webView loadHTMLString:html baseURL:nil];

// 测试加载部分HTML字符串,不需要显示整个网页内容时,通常使用此方法
NSString *partHtml = @“

Hello Itcast

“;
[_webView loadHTMLString:partHtml baseURL:nil];

// 测试加载本地PDF,需要指定MIMETYPE
[webView loadData:[NSData dataWithContentsOfFile:dataPath] MIMEType:@“application/pdf” textEncodingName:@“UTF-8” baseURL:nil];
// 测试加载本地文本文件,需要指定MIMETYPE

[webView loadData:[NSData dataWithContentsOfFile:dataPath] MIMEType:@“text/plain” textEncodingName:@“UTF-8” baseURL:nil];

// 测试网络HTML文件,需要指定MIMETYPE

NSURL *baseURL = [NSURL fileURLWithPath:[[NSBundle mainBundle]resourcePath] isDirectory:YES];
[_webView loadData:[NSData dataWithContentsOfFile: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

UIWebView全解的更多相关文章

  1. 易全解token获取

    //易全解app             string strClientID = "2016061711434943493606";             string str ...

  2. iOS 全局禁止横屏,但UIWebView 全屏播放视频,横屏,解决办法(任意页面横竖屏或禁止)

    iOS 全局禁止横屏,但UIWebView 全屏播放视频,横屏,解决办法 时间 2015-07-14 20:59:00  博客园-原创精华区 原文  http://www.cnblogs.com/fe ...

  3. IOS-UITextField-全解

    IOS-UITextField-全解   //初始化textfield并设置位置及大小   UITextField *text = [[UITextField alloc]initWithFrame: ...

  4. 什么是JavaScript闭包终极全解之一——基础概念

    本文转自:http://www.cnblogs.com/richaaaard/p/4755021.html 什么是JavaScript闭包终极全解之一——基础概念 “闭包是JavaScript的一大谜 ...

  5. Sql Server函数全解<五>之系统函数

    原文:Sql Server函数全解<五>之系统函数  系统信息包括当前使用的数据库名称,主机名,系统错误消息以及用户名称等内容.使用SQL SERVER中的系统函数可以在需要的时候获取这些 ...

  6. Sql Server函数全解<四>日期和时间函数

    原文:Sql Server函数全解<四>日期和时间函数   日期和时间函数主要用来处理日期和时间值,本篇主要介绍各种日期和时间函数的功能和用法,一般的日期函数除了使用date类型的参数外, ...

  7. 九度oj题目&amp;吉大考研11年机试题全解

    九度oj题目(吉大考研11年机试题全解) 吉大考研机试2011年题目: 题目一(jobdu1105:字符串的反码).    http://ac.jobdu.com/problem.php?pid=11 ...

  8. js系列教程2-对象、构造函数、对象属性全解

    全栈工程师开发手册 (作者:栾鹏) 快捷链接: js系列教程1-数组操作全解 js系列教程2-对象和属性全解 js系列教程3-字符串和正则全解 js系列教程4-函数与参数全解 js系列教程5-容器和算 ...

  9. js系列教程1-数组操作全解

    全栈工程师开发手册 (作者:栾鹏) 快捷链接: js系列教程1-数组操作全解 js系列教程2-对象和属性全解 js系列教程3-字符串和正则全解 js系列教程4-函数与参数全解 js系列教程5-容器和算 ...

随机推荐

  1. ACM之Java技巧

    一.Java之ACM注意点 关于四舍五入 小数保留几位:  DecimalFormat df = new DecimalFormat("0.00"); String num = d ...

  2. NancyFX 第一章 NancyFX 简介

    Nancy是.NET 平台的微框架.在受到Ruby社区的Sinatra框架启发下,NancyFx框架提供一个.NET平台下的低门槛.易上手的可用于Web开发工具包. 请注意我说的是可用于Web开发,这 ...

  3. 当在hive中show&nbsp;table&nbsp;…

    当在hive中show table 时如果报以下错时 FAILED: Error in metadata: javax.jdo.JDODataStoreException: Error(s) were ...

  4. 5.zip隐写术

    首先分析pcapng,来得到flag. 先亮出下载地址:http://ctf5.shiyanbar.com/misc/LOL/LOL.pcapng 由于这是.pcapng,需要下载 wireshark ...

  5. Unable to start services for VMware Tools

    vmware安装扩展工具报错的问题 vmware安装扩展工具报错Creating a new initrd boot image for the kernel.update-initramfs: Ge ...

  6. 洛谷P2029 跳舞

    P2029 跳舞 题目描述 小明今天得到一个跳舞毯游戏程序Dance.游戏每次连续出N个移动的“箭头”,箭头依次标号为1到N,并且的相应的分数S[1..N].如果你能“踏中”第i号箭头,你将获得相应的 ...

  7. hdu1693Eat the Trees(插头dp)

    传送门 先坑着,等啥时候会了再来填坑 不得不说思路真的是很妙啊 //minamoto #include<iostream> #include<cstdio> #include& ...

  8. 剑指Offer的学习笔记(C#篇)-- 平衡二叉树(二叉树后序遍历递归详解版)

    题目描述 输入一棵二叉树,判断该二叉树是否是平衡二叉树. 一 . 题目分析 首先要理解一个概念:什么是平衡二叉树,如果某二叉树中任意的左右子树深度相差不超过1,那么他就是一颗平衡二叉树.如下图: 所以 ...

  9. JAVA之动态编译

    通过Java动态生成class文件 今天说下JAVA中的动态编译,这个功能根据我现在的了解好像没有见到过用的,我Jio的吧,现在的一些在线代码编缉器可以用到了,这个具体我也不是很清楚.感兴趣的大家可以 ...

  10. Windwos10环境下的Geany的安装与新手使用

    相信学习Python的小伙伴都会接触到Geany这个轻量级的python文本编辑器吧,下面就是我对于安装Geany的一些小经验分享. 1:安装geany很简单,进入geany官网download下载相 ...