在Safari中打开UIWebView URL

时间:2013-01-20 01:06:50

标签: iphone xcode uiwebview

所以我设置这个有点困难。我正在使用这个:UIWebView open links in Safari代码,但我似乎无法让它工作。

这是我的.h文件:

#import <UIKit/UIKit.h>

@interface SecondViewController : UIViewController
{

}

@property (strong, nonatomic) IBOutlet UIWebView *webView;

@end

这是我的.m文件:

#import "SecondViewController.h"

@interface SecondViewController ()

@end

@implementation SecondViewController
@synthesize webView = _webView;

- (void)viewDidLoad
{
    [super viewDidLoad];

    [_webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http:m.youtube.com/user/haatfilms/uploads"]]];
    [_webView setBackgroundColor:[UIColor clearColor]];
    [_webView setOpaque:NO];
    _webView.scrollView.bounces = NO;
    _webView.scrollView.indicatorStyle = UIScrollViewIndicatorStyleWhite;
}

-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType {
    if ( inType == UIWebViewNavigationTypeLinkClicked ) {
        [[UIApplication sharedApplication] openURL:[inRequest URL]];
        return NO;
    }

    return YES;
}

@end

我认为我已经连接了UIWebView委托:

webView Delegate

但是,当我点击某个链接时,它仍会在UIWebView中加载,而不是在Safari中加载。

任何人都可以解释为什么它不起作用?非常感谢你

1 个答案:

答案 0 :(得分:0)

发现问题。而不是使用IB来连接我的webView委托,只需这样做:

[super viewDidLoad];

    webView.delegate = self;