ios UIWebView 加载网页、文件、 html
2016-08-05 本文已影响859人
一个城市猎人
UIWebView的三种加载方式 - Scorpio-JanVen的日志 - 网易博客
IOS uiwebview中加载服务器上的html图片不显示
1,本地的html文件一定要放到工程文件的根目录
2,html代码中的图片路径一定要是相对路径
3,下面是用UIWebView调用本地文件的方法
方法一:
NSString *filePath = [[NSBundle mainBundle]pathForResource:@"1" ofType:@"html"];
NSString *htmlString = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil]
[myWebView loadHTMLString:htmlString baseURL:[NSURL URLWithString:filePath]];
方法二:
NSString *filePath = [[NSBundle mainBundle]pathForResource:@"1" ofType:@"html"];
NSURL *url = [NSURL fileURLWithPath:filePath];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[myWebView loadRequest:request];
[self.view addSubview:myWebView];
如果不从html文件载入你也可以这样:
1. NSString *HTMLData = @"<img src=\"test2.png\" />ddd";
2. [self.webView loadHTMLString:HTMLData baseURL:[NSURL fileURLWithPath: [[NSBundle mainBundle] bundlePath]]];
3.baseURL:[NSURL fileURLWithPath: [[NSBundle mainBundle] bundlePath]]
UIWebView的三种加载方式
一、使用UIWebView 将web content 嵌入到应用上。
API提供了三种方法:
- (void)loadRequest:(NSURLRequest *)request;
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL;
- (void)loadData:(NSData *)data MIMEType:(NSString *)
MIMEType textEncodingName:(NSString *)textEncodingName baseURL:(NSURL *)baseURL;
1、直接给出url地址即可将web content载入。
NSString *path
= @"http://theo2life.com";
NSURL *url
= [[NSURL alloc] initWithString:path];
[self.webView loadRequest:[NSURLRequest requestWithURL:url]];
2、将本地html文件内容嵌入webView
NSString *resourcePath
= [ [NSBundle mainBundle] resourcePath];
NSString *filePath
= [resourcePath stringByAppendingPathComponent:@"test.html"];
NSString *htmlstring
=[[NSString alloc] initWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil];
[self.webView loadHTMLString:htmlstring baseURL:[NSURL fileURLWithPath: [[NSBundle mainBundle] bundlePath]]];
如果不从html文件载入你也可以这样:
1. NSString *HTMLData = @"<img src=\"test2.png\" />ddd";
2. [self.webView loadHTMLString:HTMLData baseURL:[NSURL fileURLWithPath: [[NSBundle mainBundle] bundlePath]]];
3.baseURL:[NSURL fileURLWithPath: [[NSBundle mainBundle] bundlePath]];
这段指出HTMLData所引用的其他文件资源的基本路径,如果baseURL:nil图片信息将不会显示出来~
3、同2,更详细的给出了web content的编码方式。
二、其他操作:
如果载入的web布局大过ipad尺寸发现超出的部分会是空白,则设置webView.scalesPageToFit = YES;让web content布局适应webView。