Sobes.tech
Junior — Middle

Vai ir obligāti jāizsauc vecāku metode caur super, pārrakstot loadView?

sobes.tech AI

Atbilde no AI

UIViewController klases loadView metodā nav obligāti izsaukt vecākmetodi caur super.loadView(), un tas parasti netiek darīts. Tas ir tāpēc, ka loadView ir paredzēts manuāli izveidot un iestatīt kontroliera saknes skatu. Ja pārdefinējat šo metodi, jums pašiem jāizveido un jāpievieno view īpašība.

Ja izsauksiet super.loadView(), tiks ielādēta standarta īstenojuma versija, kas mēģina ielādēt skatu no storyboard vai nib faila. Manuāli izveidots skats var novest pie konfliktiem vai dublējumiem.

Piemērs, kā pārdefinēt loadView bez super izsaukuma:

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