Junior — Middle
Kötelező a szülői módszert a super segítségével hívni a loadView felülírásakor?
sobes.tech MI
Válasz az MI-től
A UIViewController osztály loadView metódusában a super.loadView() hívása nem kötelező, és általában nem is történik meg. Ez azért van, mert a loadView arra szolgál, hogy kézzel hozzon létre és állítson be a vezérlő gyökérnézetét. Ha felülírja ezt a metódust, akkor önállóan kell létrehoznia és hozzárendelnie a view tulajdonságot.
Ha meghívja a super.loadView()-t, akkor az alapértelmezett implementáció töltődik be, amely megpróbálja betölteni a nézetet storyboard vagy nib fájlból. A kézi nézetkészítés konfliktusokat vagy duplikációkat okozhat.
Példa a loadView felülírására super hívása nélkül:
override func loadView() {
let customView = UIView()
customView.backgroundColor = .white
self.view = customView
}