iOS 原生和H5交互总结

1.创建webview

UIWebView *_myWebView = [[UIWebView allow]initWithFrame :bounds];

_myWebView.delegate=self;//代理

[self.view addSubview:_myWebView];

2.网络请求数据加载到webview上

NSString * urlString=[NSString stringWithFormat:@"%@",@"http://www.baidu.com"]; //l链接一定加http或者https不然加载不出来

NSString *encodeStr = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];  //转码防止链接有中文

NSURL *url = [NSURL URLWithString:encodeStr]; 

[_myWebView loadRequest:request];

3.实现webview 代理

#pragma mark - NJKWebViewProgressDelegate

-(void)webViewProgress:(NJKWebViewProgress *)webViewProgress updateProgress:(float)progress

{

self.title = [_myWebView stringByEvaluatingJavaScriptFromString:@"document.title"];

}

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType

{

NSString *host = request.URL.absoluteString;  //获取当前的URL  根据当前的URL判断跳转逻辑

NSLog(@"host == %@",host);

return YES;

}

4 原生点击事件 webview返回上个webview

[_myWebView goBack];

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • iOS开发系列--网络开发 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博、微信等,这些应用本身可...
    lichengjin阅读 3,705评论 2 7
  • 随着H5技术的兴起,在iOS开发过程中,难免会遇到原生应用需要和H5页面交互的问题。其中会涉及方法调用及参数传值等...
    Chris_js阅读 3,109评论 1 8
  • http://www.cnblogs.com/mddblog/p/5281748.html 一、整体介绍 UIWe...
    F麦子阅读 1,250评论 0 2
  • 一、WebView WebView就是一个内嵌浏览器控件,在iOS中主要有两种WebView:UIWebView和...
    iOS祎阅读 1,102评论 0 2
  • 回老家翻来了以前的“宝贝”,剪报本,发到朋友圈里,得到了同学们的点赞。 就是这些豆腐块的剪报,帮我度过了枯燥的油田...
    南良大维阅读 246评论 2 3