Iphone 使用webview通过safari打开链接时出现问题

Iphone 使用webview通过safari打开链接时出现问题,iphone,xcode,ios,uiwebview,Iphone,Xcode,Ios,Uiwebview,您好,我在通过safari打开web链接时遇到问题。这是我的密码 标题 #import <UIKit/UIKit.h> @interface qrcode_info : UIViewController <UIWebViewDelegate,UIAlertViewDelegate> { } @property (nonatomic, retain) IBOutlet UIWebView *Web; @end //main file #import

您好,我在通过safari打开web链接时遇到问题。这是我的密码

标题

#import <UIKit/UIKit.h>


@interface qrcode_info : UIViewController <UIWebViewDelegate,UIAlertViewDelegate> {

}

@property (nonatomic, retain) IBOutlet UIWebView *Web;



@end



//main file


#import "qrcode_info.h"


@implementation qrcode_info
@synthesize Web;



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

    return YES;
}

    //[[UIApplication sharedApplication] openURL:[inRequest URL]];
    //return NO;


- (void)viewDidLoad {
    [super viewDidLoad];
    [Web  loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"help" ofType:@"html"] isDirectory:NO]]];
    //self.wvTutorial = [[WebViewController alloc] initWithNibName:@”WebView” bundle:[NSBundle mainBundle]];

}
#导入
@接口qrcode_信息:UIViewController{
}
@属性(非原子,保留)ibuiwebview*Web;
@结束
//主文件
#导入“qrcode_info.h”
@实施QRU代码信息
@综合网络;
-(BOOL)Web:(UIWebView*)Web应加载WithRequest:(NSURLRequest*)请求导航类型:(UIWebViewNavigationType)导航类型{
如果(navigationType==UIWebViewNavigationTypeLinkClicked){
[[UIApplication sharedApplication]openURL:[请求URL]];
返回否;
}
返回YES;
}
//[[UIApplication sharedApplication]openURL:[inRequest URL]];
//返回否;
-(无效)viewDidLoad{
[超级视图下载];
[Web loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle]pathForResource:@“html”类型的“帮助”]isDirectory:NO]];
//self.wvtuorial=[[WebViewController alloc]initWithNibName:@“WebView”捆绑包:[NSBundle mainBundle]];
}
应该是

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

您不能更改委托方法的签名并期望调用它。

FluchPunk在前往safari之前如何执行警报?使用
cancel
open
按钮创建UIAlertView(请参阅文档)。将警报委托设置为self,并实现
alertView:didDismissWithButtonIndex:
delegate方法。检查点击了哪个按钮,然后做任何你想做的事情。这些视图真的很容易。
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {