使用ObjectiveC,我正在开发一个针对iOS11的SingleView应用程序,该应用程序具有一个ViewController/View。在View顶部的Main.storyboard中,我放置了一个WebKitView(WKWebView)。我在模拟器和运行iOS11.0.1的iPhone6上都看到了崩溃:由于未捕获的异常“NSInvalidUnarchiveOperationException”而终止应用程序,原因:“无法实例化名为WKWebView的类”我还需要其他什么才能让它工作吗?从Storyboard唤醒后,它似乎无法实例化WKWebView。其他细节:Xcode版本
使用ObjectiveC,我正在开发一个针对iOS11的SingleView应用程序,该应用程序具有一个ViewController/View。在View顶部的Main.storyboard中,我放置了一个WebKitView(WKWebView)。我在模拟器和运行iOS11.0.1的iPhone6上都看到了崩溃:由于未捕获的异常“NSInvalidUnarchiveOperationException”而终止应用程序,原因:“无法实例化名为WKWebView的类”我还需要其他什么才能让它工作吗?从Storyboard唤醒后,它似乎无法实例化WKWebView。其他细节:Xcode版本
实现:1、WKWebView加载过内容需要做本地存储。2、WKWebView加载的url本地有缓存时,在无网状态下也能加载出来。3、WKWebView加载的url本地有缓存,但网页内容更改时,需要重新加载url(不取本地缓存,加载完成后更新本地缓存)。4、可设置缓存时间和缓存最大容量。(参考“SD_WebImage”封装的内部缓存及清理缓存方式)。5、可清除缓存。话不多说,直接上代码(封装类):#importNS_ASSUME_NONNULL_BEGIN@interfaceLCWebViewCache:NSObject///从池中获取一个WKWebView+(WKWebView*)getWKW
实现:1、WKWebView加载过内容需要做本地存储。2、WKWebView加载的url本地有缓存时,在无网状态下也能加载出来。3、WKWebView加载的url本地有缓存,但网页内容更改时,需要重新加载url(不取本地缓存,加载完成后更新本地缓存)。4、可设置缓存时间和缓存最大容量。(参考“SD_WebImage”封装的内部缓存及清理缓存方式)。5、可清除缓存。话不多说,直接上代码(封装类):#importNS_ASSUME_NONNULL_BEGIN@interfaceLCWebViewCache:NSObject///从池中获取一个WKWebView+(WKWebView*)getWKW
加载HTML字符串内容时,字体自适应屏幕问题处理,在创建 WKWebView时,注入相关的js:WKWebViewConfiguration*wkWebConfig=[[WKWebViewConfigurationalloc]init];NSString*jSString=@"varmeta=document.createElement('meta');meta.setAttribute('name','viewport');meta.setAttribute('content','width=device-width');document.getElementsByTagName('head
加载HTML字符串内容时,字体自适应屏幕问题处理,在创建 WKWebView时,注入相关的js:WKWebViewConfiguration*wkWebConfig=[[WKWebViewConfigurationalloc]init];NSString*jSString=@"varmeta=document.createElement('meta');meta.setAttribute('name','viewport');meta.setAttribute('content','width=device-width');document.getElementsByTagName('head