2017-07-09 14 views
1

iOS開発を初めて利用しています。私はハイパーリンクを持つ基本的なhtmlページを作成しました。次のコードを使用して、htmlページをappに変換しました。iOSアプリケーションからブラウザのハイパーリンクを開く

class ViewController: UIViewController, UIWebViewDelegate { 

    @IBOutlet weak var lupView: UIWebView! 
    override func viewDidLoad() { 
     super.viewDidLoad() 
     // Do any additional setup after loading the view, typically from a nib. 
     lupView.loadRequest(URLRequest(url: Bundle.main.url(forResource: "lup_package/lup/index", withExtension: "html")!)) 


    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
     // Dispose of any resources that can be recreated. 
    } 


} 

iPad Airにビルドするとすべてうまく動作します。しかし、私がハイパーリンクをタップすると、ターゲットウェブサイトはアプリ自体で開いています。私はそれをブラウザで開くことが望ましいでしょう。それを達成するのを手伝ってください。それが働いていると私が説明してくれれば素晴らしいでしょう。

答えて

0

Safariを使用してURLを開くだけの場合は、次のようにしてください。

Safariを使用してWebViewでハイパーリンクを開きたい場合。 thisを確認してください。代理メソッドwebView:shouldStartLoadWithを使用する必要があります。ビューコントローラまたはストーリーボードにlupView.delegate = selfを設定することを忘れないでください。

func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool { 

     if navigationType == .linkClicked { 
      // Open links in Safari 
      guard let url = request.url else { return true } 

      if #available(iOS 10.0, *) { 
       UIApplication.shared.open(url, options: [:], completionHandler: nil) 
      } else { 
       // openURL(_:) is deprecated in iOS 10+. 
       UIApplication.shared.openURL(url) 
      } 
      return false 
     } 

     // Handle other navigation types... 
     return true 
    } 
+0

私はハイパーリンクをhtmlドキュメントに持っています。タップはhereとGoogleに行きます。 – Muthu

+0

私の答えを編集しました – Lawliet

関連する問題