两点非常坑爹的地方:第一点,就是导入前端给你的h5包的时候 导入h5的包 这里如果选择第一个,会无法加载js和css样式以及img,因为大部分前端这些东西都是写的绝对路径。如果你要选第一个groups,那么你就要去修改...
两点非常坑爹的地方:第一点,就是导入前端给你的h5包的时候
导入h5的包
这里如果选择第一个,会无法加载js和css样式以及img,因为大部分前端这些东西都是写的绝对路径。如果你要选第一个groups,那么你就要去修改h5里面的路径,非常的繁琐,而且前端维护也很难受。
这里选择第二个。导入Create folder references。你会发现是个蓝色的文件夹。然后,不要急着去用你的[NSBundle mainBundle]查找路径,因为这里有个坑。你需要去添加
这里加入刚刚导入进来的那个蓝色文件夹。
然后你就可以去添加到你的wkwebView了。然后,第二个坑,网上很多都是用
[_wkWebView loadRequest:request];
这种加载方式去加载本地的html,结果你会发现,模拟器就是不出来,全空白的。因为在ios9以后,这个方法不允许加载本地的html。(知道的人觉得很简单,不知道的,要纠结很久。)
NSString *path = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html" inDirectory:@"alwaysOx"];
NSURL *fileURL = [NSURL fileURLWithPath:path];
[_webView loadFileURL:fileURL allowingReadAccessToURL:fileURL];
正确的方式是用这个loadFileURL:allowingReadAccessToURL:的方法,就可以加载出html了,而且有css和js以及img的。
做个记录,这种坑,以后谁遇到了,可以避免。
作者:Mr_阿飞
链接:https://www.jianshu.com/p/b7ef38784b99
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
本文标题为:IOS WKWebView加载本地H5以及css,js等样式
基础教程推荐
- iOS开发使用XML解析网络数据 2022-11-12
- Android Compose自定义TextField实现自定义的输入框 2023-05-13
- iOS Crash常规跟踪方法及Bugly集成运用详细介绍 2023-01-18
- iOS中如何判断当前网络环境是2G/3G/4G/5G/WiFi 2023-06-18
- MVVMLight项目Model View结构及全局视图模型注入器 2023-05-07
- Android开发Compose集成高德地图实例 2023-06-15
- IOS获取系统相册中照片的示例代码 2023-01-03
- iOS开发 全机型适配解决方法 2023-01-14
- Android实现短信验证码输入框 2023-04-29
- Flutter进阶之实现动画效果(三) 2022-10-28