方法一:
// 获取路径
NSString * path = [[NSBundle mainBundle] pathForResource:@"文件名" ofType:@"html"];
// 创建URL
NSURL * url = [NSURL fileURLWithPath:path];
// 创建NSURLRequest
NSURLRequest * request = [NSURLRequest requestWithURL:url];
// 加载
[webView loadRequest:request];
- 这种方法是加载通过Creat groups方式添加的文件。这里需要注意的是前端代码里在引入资源时,代码里所有的资源路径(引入图片、js、css、html等等)都不要,直接把前面的路径都删了,只需要文件名就可以了。否则在引入资源时Xcode会找不到,比如在页面里某个地方有图片,但你Xcode本地前端代码里引入图片用的是路径,那么图片就会找不到,在页面上就不会显示图片。
在这里推荐使用下面这种方法!
方法二:
NSString * path = [[NSBundle mainBundle] pathForResource:@"login" ofType:@"html" inDirectory:@"AppWeb/view"];
NSURL * url = [NSURL URLWithString:path];
NSURLRequest * request = [NSURLRequest requestWithURL:url];
[webView loadRequest:request];
NSString * path = [[NSBundle mainBundle] pathForResource:@"login" ofType:@"html" inDirectory:@"AppWeb/view"];
这个方法里
login:文件名
html:文件名后缀
AppWeb/view:文件路径
- 这种方法是加载通过Creat folder reference方式添加的文件
使用第二种方法就不用去改前端代码里的路径了。但需要注意文件的引入方式!
两种引入文件方式的区别请看Xcode引入文件的两种方式
- 如果加载的不是HTML文件而是HTML代码,那么可以使用下面这个方法
NSString * str = @"<div class=\"logo\"><img src=\"logo.png\" /> 协同管理</div>";
[webView loadHTMLString:str baseURL:nil];
str就是你的HTML代码,需要注意的是字符串里双引号的处理(在双引号前面加\)
觉得有用麻烦给❤️,您的❤️就是小编的动力
网友评论