Swift – 在WebView中禁用链接

我目前正在寻找一种方法来禁用我的WebView中的链接,这是我的WebView

import UIKit class ViewController_webView_news: UIViewController { @IBOutlet weak var WebViewNews: UIWebView! @IBOutlet weak var TBB_news: UITabBarItem! @IBOutlet weak var activity: UIActivityIndicatorView! override func viewDidLoad() { super.viewDidLoad() var TBB_news_img = UIImage(named: "TabbarNews.png") as UIImage TBB_news.selectedImage = TBB_news_img var newsurl = "http://google.com" let newsViewUrl = NSURL(string: newsurl) let request = NSURLRequest(URL: newsViewUrl) WebViewNews.loadRequest(request) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } @IBAction func BThome(sender: AnyObject) { var newsurl = "http://google.com" let newsViewUrl = NSURL(string: newsurl) let request = NSURLRequest(URL: newsViewUrl) WebViewNews.loadRequest(request) } func webViewDidStartLoad(_ : UIWebView){activity.startAnimating() } func webViewDidFinishLoad(_ : UIWebView){activity.stopAnimating()} 

有没有办法为此使用“UIWebViewNavigationType.LinkClicked”? 目前即时使用

 let result = WebViewNews.stringByEvaluatingJavaScriptFromString("window.location.href = \"http://google.de\";") 

使用UIWebViewDelegate方法并将其设置为始终返回NO。 这样它永远不会加载任何其他url。 这是客观的c代码,你需要将其改为swift。

 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { return NO; } 

快速阅读这里

迅速:

 func webView(WebViewNews: UIWebView!, shouldStartLoadWithRequest request: NSURLRequest!, navigationType: UIWebViewNavigationType) -> Bool { return false; }