Reputation: 1121
I'm getting Xcode compiler error when trying to subclass UIContextMenuConfiguration.
Here's simple code that reproduces the problem:
@available(iOS 13.0, *)
class DateDifferenceContextMenu: UIContextMenuConfiguration {
init(indexPath: IndexPath, dateDifference: Int) {
super.init(identifier: nil, previewProvider: nil, actionProvider: nil)
}
}
The error reads:
Must call a designated initializer of the superclass 'UIContextMenuConfiguration'.
My super call matches the designated initializer. What's wrong?
Upvotes: 0
Views: 114
Reputation: 17844
My super call matches the designated initializer.
No, it calls a convenience
initializer.
Change your code to either simply call super.init()
, or make your initializer be a convenience
well. I.e.:
class DateDifferenceContextMenu: UIContextMenuConfiguration {
// use either this
convenience init(indexPath: IndexPath, dateDifference: Int) {
self.init(identifier: nil, previewProvider: nil, actionProvider: nil)
}
// or this
init(indexPath: IndexPath, dateDifference: Int) {
super.init()
}
}
Upvotes: 2