感谢您浏览我的问题。 首先,让我描述的应用程序。 我有一个使用故事板和ARC iOS5.1标签栏基于应用程序。 有四个卡口与每一个显示用本地HTML文件网页视图的图控制器(每个视图是一组不同的HTML文件来显示)。
目前,当用户触摸HTTP或HTTPS链接,它会在Safari中打开。 不过,我现在希望通过一个模态视图的应用程序中打开。 我公司目前拥有的接口创建并准备好展示,但我不能URL传递到模式的“webview2”。 我找了很多例子可以做到这一点使用RSURL和串并等,但不能得到其中的任何工作。 一些给出的示例代码似乎并没有对我的情况下工作。
在我FirstViewController.m文件(这是在其他视图一样),我有...
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {
//Gets the link.
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
NSURL *URL = [request URL];
NSLog(@"url:%@",request); //Get's the url itself
//If it's an external link...
if ([[URL scheme] isEqualToString:@"http"] ||
[[URL scheme] isEqualToString: @"https" ]) {
[[UIApplication sharedApplication] openURL:[request URL]];
NSLog(@"Opened in Safari");
return NO;
}
//If it's an email address...
else if ([[URL scheme] isEqualToString:@"mailto"]) {
[webView loadRequest:request];
[[UIApplication sharedApplication] openURL:[request URL]];
NSLog(@"Opened in Mail App");
return NO;
}
}
return YES;
}
其中,如果我想要的网址在Safari中打开工作正常。 所以在这个部分...
//If it's an external link...
if ([[URL scheme] isEqualToString:@"http"] ||
[[URL scheme] isEqualToString: @"https" ]) {
[[UIApplication sharedApplication] openURL:[request URL]];
NSLog(@"Opened in Safari");
return NO;
}
我需要它来打开一个模式视图与点击的URL,而不是Safari浏览器。
那么,我问的是... 什么是让这个URL保存最好的办法,然后打开模式视图,然后在模态的WebView打开刚触及网址是什么?
我已经有一个按钮,辞退等我只是需要它时,它加载与点击的URL加载做出的模式的看法。
我可以通过线加载模式...
[self performSegueWithIdentifier:@"ModalWebView" sender:self];
但只是加载它没有任何URL信息和空白的WebView,当然。 模态使用WebViewController.h /米。
如果有人能告诉我如何打开和URL传递所以它加载在SEGUE“ModalWebView”,我将不胜感激。 请让我知道,如果我需要做任何性质或其他任何东西,我应该在我的WebViewController.h / M运行模式视图。 也许 - (无效)prepareForSegue需要使用? 如果是这样,怎么样?
我知道答案也许很简单,但我还是一个初学者,花了几天试图找到一个明确的答案。 我通过搜索发现之前回答许多我的问题在这个网站,但我怕我卡在这一个。
感谢您的时间和耐心。