Я не могу добавить метод init к следующему классу UIViewController. Мне нужно написать код в методе init. Должен ли я писать метод init (coder)? Даже когда я добавляю методы кодера и декодера, я все равно получаю ошибки. Я также попытался использовать метод init без каких-либо параметров, но это также не работает.Как написать методы инициализации UIViewController в Swift
class ViewController: UIViewController {
var tap: UITapGestureRecognizer?
override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
super.init(nibName: nil, bundle: nil)
tap = UITapGestureRecognizer(target: self, action: Selector("handleTap:"))
}
...
...
}
Если я вызываю метод super.init() без параметров ошибки является «Должно назвать назначенный инициализатор класса супер» и если я передаю перо параметров и расслоения, то ошибка «Обязательный инициализатор инициализация (кодировщик)».
Даже когда я добавляю init (coder) и init (декодер), он не работает.
Что такое ошибка? –
вам нужно попробовать init. Я добавил ответ @ankit –
Что именно вы хотите добавить в свой 'init()'? Если это просто жест нажатия, вы можете сделать это и в 'viewDidLoad()', или даже сделать его ленивым var. – Eendje