Junior — Middle
Je povinné pri prepisovaní metódy loadView volať rodičovskú metódu cez super?
sobes.tech AI
Odpoveď od AI
V metóde loadView triedy UIViewController nie je volanie rodičovskej metódy cez super.loadView() povinné a zvyčajne sa nevykonáva. Je to preto, že loadView je určený na manuálne vytvorenie a nastavenie koreňového zobrazenia kontroléra. Ak túto metódu prepíšete, musíte sami vytvoriť a priradiť vlastnosť view.
Ak zavoláte super.loadView(), načíta sa štandardná implementácia, ktorá sa snaží načítať zobrazenie zo storyboardu alebo nib súboru. Ručné vytvorenie zobrazenia môže viesť ku konfliktom alebo duplikátom.
Príklad prepísania loadView bez volania super:
override func loadView() {
let customView = UIView()
customView.backgroundColor = .white
self.view = customView
}