Przeglądałem API do programowania IOS i czytałem o kontrolerach widoku i UIViews. Wygląda na to, że podklasy UIViewController są naprawdę użyteczne w nawigacji Modal i animacji niestandardowej, ale nie widzę żadnych innych zastosowań.Kiedy należy używać kontrolera UIViewController w programie IOS?
Jakie korzyści przynosi zastosowanie podklas UIViewController zamiast zwykłej podklasy NSObject?
Dlaczego
@interface MyViewController : UIViewController {
}
-(void)handleEvent;
@end
Zamiast
@interface MyViewController : NSObject {
UIView* view;
}
@property(retain) UIView* view;
-(void)handleEvent;
@end
Nie wystarczy skończyć dodając tylko widok z okna, a nie samą viewController? Dla większości celów, czy nie jest potrzebna cała funkcjonalność zamknięta w obiekcie UIView? po prostu skończyć dodając go tak:
[window addSubview:myViewControllerInstance.view]
Czy jest wykorzystanie do UIViewController innego niż wbudowany w funkcjonalności jak Modal nawigacja?
Dzięki.
(Przepraszam, jeśli to głupie pytanie, Uczę się to przez 2 dni teraz)
Chodzi o to, że w większości architektur-widok-kontrolerów, których użyłem lub opracowałem, kontroler jest całkowicie niezależny od widoku. Te "Kontrolery widoku" zachęcają do tak ścisłego łączenia widoku i kontrolera - czy powinienem stworzyć większe klasy kontrolerów do komunikacji między poszczególnymi kontrolerami widoku a modelem? – user434565
Wzór MVC nie oddziela kontrolera od widoku. Jeśli spojrzysz na diagramy MVC, zobaczysz, że część kontrolera obsługuje bezpośrednio zarówno model, jak i widok. 'UIViewController' już dba o Ciebie" kontrolowanie "" widoku ". –
Dlaczego nie ma klasy "Model" do podklasy? –