Переопределить функцию Ошибка! Метод не переопределяет любой метод из своего суперкласса

override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {
}

override func supportedInterfaceOrientations() -> Int {
}

Здесь у меня ошибка. Это говорит

Метод не переопределяет любой метод из своего суперкласса.

Это происходит несколько раз, я не могу это исправить.

Вы знаете что-нибудь об этом?

1 ответ

Решение

Ошибка приходит, потому что подпись вашего метода отличается от фактической. Вы должны использовать точную сигнатуру метода для переопределения (либо вы должны использовать функцию автозаполнения, предоставленную в XCode, либо обратиться к документации)

Прикосновения начались:

override func touchesBegan(_ touches: Set<UITouch>, 
         with event: UIEvent?)
{
}

В Swift 3 supportInterfaceOrientations больше не является методом, это вычисляемое свойство, поэтому его подпись становится:

override var supportedInterfaceOrientations : UIInterfaceOrientationMask
{
}
Другие вопросы по тегам