Ios 无法触发添加的UIBarButtonItem
语言:Ios 无法触发添加的UIBarButtonItem,ios,swift,webview,Ios,Swift,Webview,语言:swift3.0 操作系统:macOS 10.12.3 xcode:8.2.1 这是一个带有ViewController的空白故事板 代码如下: import UIKit import WebKit class CommonWebViewViewController: UIViewController, WKUIDelegate, WKNavigationDelegate { let backButton = UIBarButtonItem(title: "BACK", sty
swift3.0
操作系统:macOS 10.12.3
xcode:8.2.1
这是一个带有ViewController的空白故事板
代码如下:
import UIKit
import WebKit
class CommonWebViewViewController: UIViewController, WKUIDelegate, WKNavigationDelegate {
let backButton = UIBarButtonItem(title: "BACK", style: .plain, target: self, action: #selector(goBack))
let closeButton = UIBarButtonItem(title: "CLOSE", style: .plain, target: nil, action: #selector(close))
let webview = WKWebView()
var url = ""
override func viewDidLoad() {
super.viewDidLoad()
view = webview
navigationItem.setLeftBarButtonItems([backButton], animated: true)
webview.uiDelegate = self
webview.navigationDelegate = self
webview.allowsBackForwardNavigationGestures = true
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
title = webView.title
}
func load(withUrl url: String) {
self.url = url
webview.load(URLRequest(url: URL(string: self.url)!))
}
func goBack() {
if webview.canGoBack {
webview.goBack()
navigationItem.leftBarButtonItems?.append(closeButton)
}
else {
close()
}
}
func close() {
_ = self.navigationController?.popViewController(animated: true)
}
}
我想制作一个浏览器,当我点击后退按钮时,除非单击webview中的链接,否则不会有任何响应
p.S如果我在viewDidload方法中创建UIBarButtonim对象,问题就会解决。您似乎根本没有将按钮添加到视图中,您是如何“添加”它们的?通过以下行:navigationItem.SetLeftBarButtonims([backButton],动画:true)抱歉,没有看到它您似乎根本没有将按钮添加到视图中,您是如何看到的通过以下行“添加”了“它们”:navigationItem.SetLeftBarButtonims([backButton],动画:true)抱歉,没有看到它