在safari或本机应用程序中快速打开3个URL

时间:2017-02-24 10:57:43

标签: ios swift3

import UIKit
import WebKit


// Add WKWebView in StoryBoard
class ViewController: UIViewController {

    @IBOutlet var webView: WebView!

    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        webView.loadUrl(string: "https://url.to/my/template")
    }
}

class WebView: WKWebView {

    required init?(coder: NSCoder) {

        if let _view = UIView(coder: coder) {
            super.init(frame: _view.frame, configuration: WKWebViewConfiguration())
            autoresizingMask = _view.autoresizingMask
        } else {
            return nil
        }
    }

    func loadUrl(string: String) {
        if let url = URL(string: string) {
            load(URLRequest(url: url))
        }
    }

}

该网站是html5 + CSS3。从themeforest购买了一个模板,但开发人员表示他不支持xcode。 至于现在,所有链接都在webview中打开。如何在Safari中打开它们,以及转到应用程序的网址,打开已安装的应用程序,例如facebook,twitter? 我所能找到的就是在safari中打开所有URL。 L.E.谢谢!所以我想加载托管在网址上的模板,但模板中的链接加载到safari中,甚至更好,就像来自Swift Open Link in Safari的3票的回答一样。当我尝试使用该代码时,我收到错误。对不起,谢谢!我根本不知道(或编码很多)。

1 个答案:

答案 0 :(得分:2)

如果你想打开url作为safari,你可以使用Add SafariSevices.Framework

 import SafariServices
 class ViewController: UIViewController, SFSafariViewControllerDelegate
 {

@IBAction func btnClick(_ sender: Any)

{
    let safariVC = SFSafariViewController(url: NSURL(string: "https://www.google.co.in") as! URL)

    self.present(safariVC, animated: true, completion: nil)

}

 func safariViewControllerDidFinish(controller: SFSafariViewController)
{
    controller.dismiss(animated: true, completion: nil)
}

}