我無法使簡單的工具欄操作正常工作 - 我以前見過這個問題,但答案似乎無效。所有我做過到目前爲止創建一個新的測試項目(在Xcode 7.3),並修改了ViewController
類,如下所示:UIBarButton操作不起作用
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
print("viewDidLoad")
let tb = UIToolbar()
let actionClear = #selector(ViewController.clearAction(_:))
let clearButton = UIBarButtonItem(barButtonSystemItem: .Trash, target: self, action: actionClear)
tb.items = [clearButton]
self.view.addSubview(tb)
tb.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activateConstraints([
tb.bottomAnchor.constraintEqualToAnchor(self.view.bottomAnchor),
tb.centerXAnchor.constraintEqualToAnchor(self.view.centerXAnchor)
])
}
func clearAction (sender: AnyObject) {
print("clear")
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
代碼編譯W/O錯誤,垃圾桶圖標在底部顯示出來(在iPad上測試),但是當我觸摸圖標時,該操作從未得到執行。
我看到似乎表明,你需要使用一個自定義視圖(UIButton
)與UIBarButtonItem
一些(舊)的答案,但是這似乎有點瘋狂,因爲UIBarButtonItem
的目的是創建一個項目工具欄。我在這裏錯過了什麼?
謝謝,沒有的伎倆!我沒有懷疑這些約束有什麼問題,因爲垃圾可能出現在屏幕上,但它不是「活躍」的。我想事情可以看得見,但不是'可觸摸的'? –