2009-04-07 1 views
0

Die Eigenschaft Label vom Typ UILabel und ein Auslass in UIViewController.UILabel Einstellung vor Subview in UIWindow Zugabe nicht

Warum hat die folgenden Arbeiten: -

[window addSubview:viewController.view]; 
[viewController.label setText:@"New Label"] ; 

und die umgekehrte Reihenfolge der Aussagen nicht den Standardtext in dem Etikett ändern:

[viewController.label setText:@"New Label"] ; 
[window addSubview:viewController.view]; 

Ist das nicht von der Benutzeroberfläche geladen ansehen Elemente an den UIViewController angehängt?

Antwort

3

Ein View-Controller erstellt oder lädt seine Ansicht, wenn er zum ersten Mal angefordert wird, entweder von einer NIB oder über die loadView-Methode. In den meisten Fällen werden die zugehörigen Untersichten auch nur erstellt, wenn die Hauptansicht geladen wird. Das bedeutet, dass nil ist, bis Sie zuerst versucht haben, auf viewController.view zuzugreifen.

Wenn Sie also versuchen, den Beschriftungstext zuerst festzulegen, senden Sie diese Nachricht tatsächlich an nil, weshalb es nicht scheint, dass es wirksam wird.

Verwandte Themen