Я навчаюсь розробці iOS за допомогою онлайн-курсу, і кожного разу, коли я створюю власні подання (власна комірка подання таблиці, комірка подання колекції тощо), інструктор завжди реалізує цей ініціалізатор:
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
Чому саме я завжди повинен це називати? Що це робить? Чи можу я помістити властивості всередині init?
NSCoding
то вам потрібно реалізувати цей ініціалізатор, оскільки це потрібно для класів, які реалізують NSCoding
. Вам потрібно принаймні викликати метод init надкласового рівня. Якщо NSCoder
містять закодовані властивості для вашого класу, тоді ви можете скористатися цим методом, щоб відновити їх