Sobes.tech
Junior — Middle

Koje posledice mogu nastati prilikom pristupa svojstvu view unutar metode loadView u kontroleru?

sobes.tech АИ

Одговор од АИ

U metodi loadView iOS kontrolera, kreira se i dodeljuje glavni prikaz (view). Ako u loadView pristupite svojstvu view, to će dovesti do rekurzivnog poziva metode loadView, jer view još nije inicijalizovan i sistem će pokušati da ga učita, pozivajući loadView ponovo. To će izazvati beskonačnu rekurziju i, kao posledicu, pad aplikacije sa greškom prelivanja steka.

Zato u loadView ne treba pristupati self.view. Umesto toga, treba direktno kreirati i dodeliti novi prikaz, na primer:

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