Junior — Middle
Milyen következményekkel járhat, ha a loadView módszerben a view tulajdonsághoz férünk hozzá az ellenőrzőben?
sobes.tech MI
Válasz az MI-től
Az iOS vezérlő loadView metódusában létrejön és hozzárendelésre kerül a fő nézet (view). Ha a loadView belsejében hozzáférsz a view tulajdonsághoz, az rekurzív híváshoz vezet, mivel a view még nincs inicializálva, és a rendszer megpróbálja betölteni, újra meghívva a loadView-t. Ez végtelen rekurziót eredményez, és ennek következtében az alkalmazás összeomlik verem túlcsordulási hibával.
Ezért a loadView-ban nem szabad hozzáférni a self.view-hoz. Ehelyett közvetlenül létre kell hozni és hozzárendelni egy új nézetet, például:
override func loadView() {
let customView = UIView()
customView.backgroundColor = .white
self.view = customView
}