Переопределенный метод вызывает оригинальный метод, объявленный в расширении (категории) в swift?
Мой код:
extension UIViewController {
@IBAction func someFunc() {
...
}
}
class CustomViewController: UIViewController {
@IBAction override func someFunc() {
...
}
}
Можно CustomViewController.someFunc()
вызов UIViewController.someFunc()
?
Есть похожие вопросы, но мой другой. ПРИМЕЧАНИЕ: оригинальный метод объявлен в расширении, а не в родительском классе!
1 ответ
Решение
Вам просто нужно позвонить super.someFunc()
,
class CustomViewController: UIViewController {
@IBAction override func someFunc() {
// Call super method
super.someFunc()
// Do override specific stuff
...
}
}
PS: знайте, что вы забыли наследовать от UIViewController
в вашем примере.