Junior — Middle
Millised tagajärjed võivad tekkida, kui pääsete loadView meetodi sees kontrollijas view omadusele?
sobes.tech AI
Vastus AI-lt
iOS kontrolleri loadView meetodis luuakse ja määratakse põhivaade (view). Kui loadView sees pöörduda omaduse view poole, põhjustab see rekursiivse loadView meetodi kutsumise, kuna view pole veel initsialiseeritud ja süsteem püüab seda laadida, kutsudes loadView uuesti. See põhjustab lõpmatu rekursiooni ja tulemusena rakendus kukub virna ülekülluse veaga.
Seetõttu ei tohi loadView sees pöörduda self.view poole. Selle asemel tuleb otse luua ja määrata uus vaade, näiteks:
override func loadView() {
let customView = UIView()
customView.backgroundColor = .white
self.view = customView
}