[英]UIWebView open link in Safari not working?
我正在iPhone應用程序的“常見問題”頁面上工作。 我頂部有一些問題鏈接,底部將直接回答。 有些答案包含我要在Safari中打開的外部鏈接,而不是UIWebView。
我從這里 找到了這段代碼 :
-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType {
if ( inType == UIWebViewNavigationTypeLinkClicked ) {
[[UIApplication sharedApplication] openURL:[inRequest URL]];
return NO;
}
return YES;
}
由於某種原因,我需要單擊兩次鏈接以打開鏈接。 第一次觸摸該鏈接,使其突出顯示。 第二次觸摸該鏈接會轉到目的地,或者我的外部鏈接會在Safari中打開。 但是,如果刪除上面的代碼,則可以在第一次觸摸時就可以使用,但是外部鏈接會在我的WebView中打開。
注意 :我有一個UIWebView委托名稱wvFAQ。 您認為我在代碼上缺少什么嗎?
問題 :如何單擊打開鏈接?
終於從這里找到了我的問題的答案
答案是:
-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
{
NSURL *requestURL =[ [ request URL ] retain ];
if ( ( [ [ requestURL scheme ] isEqualToString: @"http" ] || [ [ requestURL scheme ] isEqualToString: @"https" ] || [ [ requestURL scheme ] isEqualToString: @"mailto" ])
&& ( navigationType == UIWebViewNavigationTypeLinkClicked ) ) {
return ![ [ UIApplication sharedApplication ] openURL: [ requestURL autorelease ] ];
}
[ requestURL release ];
return YES;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.