NSClassFromString()为nil 的几种情况
2018-04-26 本文已影响0人
biyu6
今天想封装一个webView,包含WKWebView和UIWebView,通过下面这句代码来决定是否支持WKWebView:
Class wkWebView = NSClassFromString(@"WKWebView");
if(wkWebView){//使用WKWebView
[self initWKWebView];
}else{
[self initUIWebView];
}
遇到在iOS11的情况下 竟然走了else 什么鬼!!!!
调试一把:
NSLog(@"======%@",[WKWebView class]);
嗯,确实有WKWebView;那就是 “此时未加载” 这一种情况了。
对于“此时未加载”,网上有两种解决方式:
1.在Other Linker Flags 中添加配置:-ObjC ;大多数在Swift代码中这么干
2.在Other Linker Flags 中添加配置:-all_load; 加载所有
没这么干过,试了一下,两种方法都不行!
看一眼 Librarles ,靠,忘这茬了:
在 link Blnary with librarles 中 添加 WebKit.framework
问题解决!