Junior — Middle
როდესაც იწერება loadView მეთოდი, აუცილებელია მშობლის მეთოდს super-ის საშუალებით გამოიძახო?
sobes.tech AI
პასუხი AI-სგან
UIViewController კლასის loadView მეთოდში, მშობლის მეთოდის super.loadView() გამოძახება არ არის აუცილებელი და ჩვეულებრივ არ კეთდება. ეს დაკავშირებულია იმასთან, რომ loadView განკუთვნილია მექანიკურად შექმნას და დაამყაროს კონტროლერის ძირითადი ხედი. თუ ამ მეთოდს გადახაზავთ, თქვენ უნდა შექმნათ და მიაწოდოთ საკუთარი view თვისება.
თუ გამოიძახებთ super.loadView(), ჩაიტვირთება სტანდარტული განსახორციელება, რომელიც ცდილობს ხედი ჩატვირთოს storyboard ან nib ფაილიდან. მექანიკურად შექმნილი ხედი შეიძლება გამოიწვიოს კონფლიქტები ან დუბლიკატები.
super-ის გამოძახების გარეშე loadView-ის გადახაზვის მაგალითი:
override func loadView() {
let customView = UIView()
customView.backgroundColor = .white
self.view = customView
}