码迷,mamicode.com
首页 > Web开发 > 详细

网页与原生应用之间互相跳转

时间:2015-08-10 19:36:39      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:

现在的移动应用中,常常需要在应用中展示一个Web页面,通常Web页面也需要再转回原生的应用页面,从而达到更多的页面复用。

这里介绍一种方式,通过提前截获要跳转的A标签,来判断是否需要跳转。

下面是方法:

Android:

 1       mWebView.getSettings().setDomStorageEnabled(true);
 2       mWebView.getSettings().setDatabaseEnabled(true);
 3       mWebView.getSettings().setJavaScriptEnabled(true);
 4       mWebView.loadUrl(url);
 5         mWebView.setWebViewClient(new WebViewClient() {
 6             @Override
 7             public boolean shouldOverrideUrlLoading(WebView view, String url) {
 8                 //这里添加判断代码,根据url来判断是否需要跳转到原生页面或是继续跳转到网页
 9 //                view.loadUrl(url); 
10                     return true;// 返回true来结束这次监听,不需要再次广播
11                 }
12             });

 

iOS:

UIWebView所在的Controller需要实现UIWebViewDelegate

下面是代码:

 1 - (void)viewDidLoad {
 2     [super viewDidLoad];
 3     self.theWebView.delegate = self; // 注意:这里需要设置委托
 4     NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
 5     NSURLRequest *request = [NSURLRequest requestWithURL:url];
 6     [self.theWebView loadRequest:request];
 7 }
 8 
 9 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
10     //判断是否是单击
11     if (navigationType == UIWebViewNavigationTypeLinkClicked)
12     {
13         NSURL *url = [request URL];
14         // 这里加入判断语句,判断网页url,是否需要继续跳转,或是使用原生页面
15         return NO; // 返回NO,结束网页跳转,如果要继续跳转,需要返回YES
16     }
17     return YES; // 继续网页跳转
18 }

 

网页与原生应用之间互相跳转

标签:

原文地址:http://www.cnblogs.com/maomishen/p/4718793.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!