In Swift 4 I want to use an extension of UIBarButtonItem
that instantiates a special UIBarButtonItem
object.
Here is my code (only the essential statements):
import Foundation
extension UIBarButtonItem {
convenience init(staticImageName: String) {
let staticView = UIImageView.init(image: UIImage(named: staticImageName))
self.init(customView: staticView)
// further code…
}
override open var isEnabled: Bool {
didSet {
print("didSet called") // Should be replaced by other code…
}
}
} // extension UIBarButtonItem
This extension builds without problems.
However when I run the app, I get a runtime error at the statement
self.init(customView: staticView)
.
The log says:
-[UIBarButtonItem isEnabled]: unrecognized selector sent to instance 0x7fe20c505180
What is wrong with my code?