У меня есть пользовательский быстрый подкласс UICollectionViewController, и он имеет свойство unowned var mainController
. Я не могу понять, как инициализировать это свойство. Если я попытаюсь инициализировать его перед вызовом super.init
, Xcode жалуется на то, что «self» используется до super.init. Если я попытаюсь его инициализировать впоследствии, Xcode жалуется на то, что свойство self.mainController не инициализировано при вызове super.init.Как инициализировать сохраненные сохраненные свойства в быстром подклассе?
В общем, возможно ли иметь незанятую переменную как свойство подкласса в swift?
class CustomCollection: UICollectionViewController {
unowned var mainController: MainController
convenience init(mainController: MainController) {
var collectionViewLayout = UICollectionViewLayout()
self.mainController = mainController
self.init(collectionViewLayout: collectionViewLayout)
}
override init(collectionViewLayout layout: UICollectionViewLayout) {
super.init(collectionViewLayout: layout)
}
...
}
Есть только один метод инициализации, где вы устанавливаете значение mainController или инициализировать mainController во всех ваших методов инициализации перед вызовом super.init , – Shoaib