2017-02-24 52 views
1
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中打開它們,以及轉到應用程序的url,以打開已安裝的應用程序,例如facebook,twitter? 我只能在safari中打開所有URL。 L.E.謝謝!所以我想加載在url處託管的模板,但要加載到safari中的模板中的鏈接更好,比如來自Swift Open Link in Safari的3票的答案。當我嘗試使用該代碼時,出現錯誤。對不起,謝謝!我根本不知道(或編碼很多)。swift 3在Safari或原生應用中打開網址

+0

檢查:http://stackoverflow.com/questions/10416338/open-a-facebook-link-by- native-facebook-app-on-ios和this:http://stackoverflow.com/questions/30794552/open-link-on-twitter-app-ios – Priyal

+0

'UIApplication.shared.open(NSURL(string:「https: //url.tld/to/the/site「)as!URL,options:[:],completionHandler:nil)' – viral

+0

感謝iOS App Dev。我的應用程序包含加載https://url.tld/to/t他/網站。所以,當我加載它,它加載html5模板。我想要在safari中打開旁邊的所有其他URL或者在webview中使用某種初始webview?這甚至有可能嗎? –

回答

2

如果你想打開URL如Safari不是您可以使用添加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) 
} 

} 
+0

safariVC.delegate = self 這裏我得到預期的聲明錯誤。 –

+0

//評論並檢查。你有沒有添加委託和框架 –

+0

錯誤移動到上面和下面的代碼行...當我評論一個出來。 –

相關問題