2011-11-20 10 views
16

Przypisanie kontrolera widoku do tej właściwości (programowo lub przy użyciu Konstruktora interfejsu) powoduje zainstalowanie widoku kontrolera widoku jako widoku zawartości okna w postaci .Co robi ustawienie rootViewController użytkownika UIWindow?

Powyższy cytat pochodzi z odwołania UIWindow. Moje pytanie dotyczy konkretnej fazy:

„instaluje widok kontrolera widoku jako widoku zawartości okna”

Jaki widok dokładnie zawartość patrz?

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWindow_Class/UIWindowClassReference/UIWindowClassReference.html

Odpowiedz

41

Przed własnością rootViewController przyszedł, większość aplikacje miały kod takiego w delegata aplikacji:

[window addSubview:viewController.view]; 
[window makeKeyAndVisible]; 

Ten kod ustawiony widok kontrolera widoku jako głównym widoku, ale instancja UIWindow nie ma odniesienia do kontrolera będącego właścicielem tego widoku.

Po użyciu właściwości rootViewController nie trzeba już dodawać widoku kontrolera widoku do instancji interfejsu UIWindow, jest to wykonywane automatycznie. Tak więc liczba linii kodu pozostaje taka sama, ale teraz twój UIWindow ma odniesienie do kontrolera widoku.

Tak, w nowszych aplikacji, teraz mamy kod, który wygląda tak:

window.rootViewController = viewController; 
[window makeKeyAndVisible]; 
+5

+1 za wyczerpującą odpowiedź, biorąc pod uwagę argumentację historyczną – Till

+0

+1 dobra odpowiedź! – Cyprian

+0

Dziękuję za życzliwą pomoc – Stanley