Sobes.tech
Junior — Middle

Welke gevolgen kunnen er optreden bij het benaderen van de eigenschap view binnen de loadView-methode in de controller?

sobes.tech AI

Antwoord van AI

In de loadView-methode van de iOS-controller wordt de hoofdweergave (view) gemaakt en toegewezen. Als binnen loadView wordt geprobeerd om toegang te krijgen tot de eigenschap view, leidt dit tot een recursieve aanroep van loadView, omdat view nog niet geïnitialiseerd is en het systeem zal proberen het te laden door loadView opnieuw aan te roepen. Dit resulteert in een oneindige recursie en uiteindelijk in een crash van de app met een stack overflow-fout.

Daarom mag in loadView niet worden verwezen naar self.view. In plaats daarvan moet je direct een nieuwe weergave maken en toewijzen, bijvoorbeeld:

override func loadView() {
    let customView = UIView()
    customView.backgroundColor = .white
    self.view = customView
}