2012-04-23 9 views
11

Indipendentemente dal tipo regolatore (UIViewController, UITableViewController), la seguente riga produce sempre null nel metodo ViewDidLoad:UIViewController.View.Window è nullo in metodo viewDidLoad

 
this.View.Window 

È normale, o sono io fare qualcosa di strano? Cosa potrebbe portare a UIViewController.View.Window in null?

(Suppongo che questa domanda riguardi non solo il MonoTouch, ma anche il "normale" Cacao Objective-C).

(MonoTouch 5.2.11, XCode 4.2.1 4D502)

risposta

22

Secondo la documentazione della UIView, la proprietà è windownil se la vista non è ancora stato aggiunto a una finestra che è il caso quando è viewDidLoad chiamato.

+1

Quale metodo viene chiamato dopo che la visualizzazione viene aggiunto a una finestra? –

+4

@AlexRyan È possibile utilizzare '-viewDidAppear'. –

2

Invece di self.view.window, utilizzare [(YourAppDelegate *)[[UIApplication sharedApplication] delegate] window]

Problemi correlati