在Xcode 7.1中,allowsBackForwardNavigationGestures = true无效。

7
import UIKit
import WebKit

class ViewController: UIViewController, WKNavigationDelegate {

var webView : WKWebView!

override func loadView() {
    webView = WKWebView()
    webView.navigationDelegate = self
    self.view = webView
}

override func viewDidLoad() {
    super.viewDidLoad()

    let url = NSURL(string: "http://boooo.com")
    webView.loadRequest(NSURLRequest(URL: url!))
    webView.allowsBackForwardNavigationGestures = true



}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()

}


}

一切都运行良好,但在Xcode 7.1中,allowsBackForwardNavigationGestures = true无法正常工作。在wkwebview中无法返回和前进。

1个回答

3
看起来它正在干扰navigationController的interactivePopGestureRecognizer(如果你有一个的话)。
    override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    self.navigationController?.interactivePopGestureRecognizer?.isEnabled = false
}

override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated)
    self.navigationController?.interactivePopGestureRecognizer?.isEnabled = true
}

所以,当我在导航栈中使用WKWebView时,我只是禁用了这个属性

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接