Javascript Swift-禁用WebView中的链接

Javascript Swift-禁用WebView中的链接,javascript,ios,webview,swift,Javascript,Ios,Webview,Swift,我目前正在寻找一种方法来禁用我的网络视图中的链接,这是我的网络视图 import UIKit class ViewController_webView_news: UIViewController { @IBOutlet weak var WebViewNews: UIWebView! @IBOutlet weak var TBB_news: UITabBarItem! @IBOutlet weak var activity: UIActivityIndicatorVi

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

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方法并将其设置为“始终不返回”。这样,它将永远不会加载任何其他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;
}

但这只是Objective C或者我在swift中没有看到?在我的“WebViewNews.loadRequest(request)”之后添加了这个,但它仍然让我点击links@FabianBoulegue,当您单击任何链接时,是否应调用shouldStartLoadWithRequest?如果不是,则可能您没有为UIWebView设置委托。您的权限未被调用,但我已设置了类ViewController\u webView\u新闻:UIViewController、UIWebViewDelegate以及主视图的webView委托,请参见下文。它会被炸开,但在首次加载时不会引起任何影响