项目中关于oc与JS的交互,wkwebview的使用

来源:互联网 发布:一起做作业软件 编辑:程序博客网 时间:2024/05/17 04:07

首先介绍一下WKWebView,WkWebView是ios8.0之后推出的一款用于替代UIWebView的的组件,相比于UIWebView,使用WKWebView,会提高程序的速度,减少内存的占用,所以在iPhone不断更新的情况下,后续使用WKWebView是每一个ios开发人员必知的。

首先,直接介绍WKWebView的部分Api以及使用:

1.创建

 WKWebView *webView = [[WKWebView alloc] initWithFrame:self.view.bounds];[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.baidu.com"]]];[self.view addSubview:webView];
2.页面加载状态的回调(WKNavigationDelegate)

// 页面开始加载时调用- (void)webView:(WKWebView *)webView didStartProvisionalNavigation:(WKNavigation *)navigation;// 当内容开始返回时调用- (void)webView:(WKWebView *)webView didCommitNavigation:(WKNavigation *)navigation;// 页面加载完成之后调用- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation;// 页面加载失败时调用- (void)webView:(WKWebView *)webView didFailProvisionalNavigation:(WKNavigation *)navigation;
3.页面跳转的代理方法

// 接收到服务器跳转请求之后调用- (void)webView:(WKWebView *)webView didReceiveServerRedirectForProvisionalNavigation:(WKNavigation *)navigation;// 在收到响应后,决定是否跳转- (void)webView:(WKWebView *)webView decidePolicyForNavigationResponse:(WKNavigationResponse *)navigationResponse decisionHandler:(void (^)(WKNavigationResponsePolicy))decisionHandler;// 在发送请求之前,决定是否跳转- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler;
4.WKUIDelegate协议,主要用于处理web界面的警告框
/** *  web界面中有弹出警告框时调用 * *  @param webView           实现该代理的webview *  @param message           警告框中的内容 *  @param frame             主窗口 *  @param completionHandler 警告框消失调用 */- (void)webView:(WKWebView *)webView runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(void (^)())completionHandler;
5.WKWebView与JS交互,用于得到JS的数据
- (void)userContentController:(WKUserContentController *)userContentController didReceiveScriptMessage:(WKScriptMessage *)message{    NSLog(@"JS 调用了 %@ 方法,传回参数 %@",message.name,message.body);}
详情请看网址:http://www.jianshu.com/p/6ba2507445e4以及苹果官方文档https://developer.apple.com/reference/webkit/wkwebview
http://blog.csdn.net/BaiHuaXiu123/article/details/51287367



0 0
原创粉丝点击