我有一个UIWebView屏幕,其中有一个链接,我想去另一个网页。
现在我有这个:
if ([request.URL.scheme isEqualToString:@"something"])
{
NSURL *url = [NSURL URLWithString:@"stackoverflow.com];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[theWebView loadRequest:request];
}
但它只是打开应用程序内部的链接。但是如何让它加载Web浏览器并在Web浏览器中打开URL?
同样,如果我想链接到应用程序商店中的其他应用程序,那么这样做的正确方法是什么?
谢谢!
答案 0 :(得分:2)
首先,您必须在Controller的头文件中实现UIWebViewDelegate,然后实现shouldStartLoadWithRequest以捕获NSURLrequest并在系统浏览器中启动它:
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {
NSString *url = request.URL.absoluteString;
NSLog(@"%@",url);
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];
return NO;
}
编辑(代码):
if ([request.URL.scheme isEqualToString:@"something"])
{
NSURL *url = [NSURL URLWithString:@"stackoverflow.com];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];
}