WKWebView使用、交互、以及与UIWebView使用的区别

UIWebView在经历了IOS13以后彻底被苹果遗弃了,以至于UIWebView的交互方法在IOS13及以上系统都不在主线程执行啦。
为了这个问题,还得来一次紧急更新。可能也是之前没有更换WKWebView的原因吧。

1.WKWebView使用
包含基本使用和交互方法使用


    WKUserContentController *userContentController = [[WKUserContentController alloc] init];
   /**
           设置代理对象
           ScriptMessageHandler:WKScriptMessageHandler的代理对象
           name:跟后端协调好的响应名称
          **/
 WKWebViewConfiguration *configuration = [[WKWebViewConfiguration alloc] init];
    configuration.userContentController = userContentController;
    webView = [[WKWebView alloc] initWithFrame:CGRectMake(0, 20, WIDTH, HEIGHT-20-HostHeight) configuration:configuration];
    webView.backgroundColor = [UIColor whiteColor];
    //初始化WKWebViewConfiguration
    [webView.configuration.userContentController addScriptMessageHandler:self name:@"toLogin"];
     [webView.configuration.userContentController addScriptMessageHandler:self name:@"openWxLogin"];
     [webView.configuration.userContentController addScriptMessageHandler:self name:@"openAppPage"];
    [webView setUserInteractionEnabled:YES];             //是否支持交互
         webView.UIDelegate = self;
        webView.navigationDelegate = self;               //自动缩放以适应屏幕
    [self.view addSubview:webView];
    webView.backgroundColor = [UIColor colorWithRed:242/255.0 green:242/255.0 blue:242/255.0 alpha:1.0];
    NSString *URLStr =self.strURL;
    NSLog(@"%@",URLStr);
    NSURL* url = [NSURL URLWithString:URLStr];
    [webView loadRequest:[NSURLRequest requestWithURL:url]];

   

以上是注册监听和基础使用

你可能感兴趣的:(WKWebView使用、交互、以及与UIWebView使用的区别)