Ich habe benutzerdefinierte UiTablleviewCell mit einigen Bildern und Beschriftungen, und ich möchte Label in Tableview Zelle gedreht haben ... so würde ich gerne initWithStyle-Methode bearbeiten, aber es scheint wie es nie aufgerufen wird.
%Vor%Aber in meinem Log kann ich diese Nachricht nicht sehen. In der Tabellenansicht habe ich die standard cellForRow-Methode
%Vor%Ich frage mich, wie TableView TableView-Zellen initialisiert, ich kann über einige Workarounds nachdenken, aber ich möchte es sauber haben. Danke.
Wenn die Zellen aus einer Storyboard- oder NIB-Datei stammen, wird initWithStyle:reuseIdentifier
nicht aufgerufen, stattdessen wird initWithCoder:
aufgerufen.
Hier ist eine typische Implementierung eines überschriebenen initWithCoder:
:
Funktioniert nicht, wenn Sie während der benutzerdefinierten Initialisierung auf IBOutlet zugreifen müssen.
Sie können auch die Methode watchFromNib in Erwägung ziehen, wenn Sie muss mit IBOutlet sprechen.
Diskussion
Die Nib-Loading-Infrastruktur sendet eine watchFromNib-Nachricht an jedes Objekt, das aus einem Nib-Archiv neu erstellt wurde, jedoch erst, nachdem alle Objekte im Archiv geladen und initialisiert wurden. Wenn ein Objekt eine wakeFromNib-Nachricht empfängt, ist garantiert, dass alle seine Ausgangs- und Aktionsverbindungen bereits eingerichtet sind.
Tags und Links uitableview ios initialization