【问题标题】:Opening safari from a link in Safari from within app从应用程序内的 Safari 中的链接打开 Safari
【发布时间】:2014-04-23 04:55:36
【问题描述】:

很抱歉这个问题打扰您,但是否可以在用户的​​ iDevice 上的 Safari 中打开您的 iOS 应用程序中的网站链接?我不想使用 UIWebview,我希望 Safari 应用程序使用我提供给用户的网站链接从我的应用程序中打开。谢谢。

【问题讨论】:

    标签: ios objective-c hyperlink safari mobile-safari


    【解决方案1】:

    像这样在您的 WebView 中覆盖 shouldStartLoadWithRequest :

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

    【讨论】:

      【解决方案2】:

      要从 Safari 而不是网页视图打开链接,您需要实现此方法:

       - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
          {
      
          [[UIApplication sharedApplication] openURL:SomeURL]]; 
      
      return NO;
      
          }
      

      确认UIWebViewDelegate,并返回“NO”,(以防您希望web WebView打开它)。

      【讨论】:

      • 如何将其应用于文本链接,例如一个UILabel?
      • 你不能。为此,您需要一个 UITextView 来处理指向 Safari 的链接 :)
      猜你喜欢
      • 1970-01-01
      • 2020-04-12
      • 2013-03-14
      • 2018-01-04
      • 1970-01-01
      • 2015-09-17
      • 2016-12-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多