Wenn ein UILabel mit einem IBOutlet verbunden wird, kommt es zum Absturz

7

Ich habe einen UIViewController, den ich aus einer XIB-Datei lade und auf den Stack der Navigationssteuerung schiebe.

In der Header-Datei für den View-Controller habe ich:

%Vor%

Ich mache im Code noch nichts mit "myTitle"; Ich habe gerade die Verbindungen aufgebaut.

Wenn ich die Anwendung kompiliere und ausführe und in der xib-Datei keine Labels definiert sind (und somit nichts mit dem IBOutlet verbunden ist), funktioniert es. Der View-Controller animiert in die Ansicht und zeigt die in Interface Builder erstellte Ansicht.

Wenn ich im Interface Builder ein Label zum xib hinzufüge, es aber nicht mit dem Outlet verbinde und neu kompiliere, funktioniert es immer noch und zeigt das Label mit dem Standardtext, den ich dafür eingegeben habe.

Aber wenn ich das IBOutlet myTitle mit dem Label in Interface Builder verbinde, neu kompiliere und die App starte, funktioniert es gut, bis ich versuche, den View-Controller auf den Stack des Navigations-Controllers zu schieben / p> %Vor%

Wenn ich die Steckdose wieder abziehe, arbeitet sie weiter und zeigt die statische Beschriftung wie zuvor an. Es sieht so aus, als ob die Ansicht angezeigt wird, weil der Absturz stattfindet, wenn ich die Ansicht auf den Navigationsstapel schiebe.

Soll ich nicht ein IBOutlet zu einem UILabel oder etwas hinzufügen? Oder läuft noch etwas anderes? Irgendwelche Vorschläge, wo Sie nach Ärger suchen sollten?

    
CC. 29.10.2009, 17:13
quelle

4 Antworten

6

Haben Sie einen Accessor für Ihr IBOutlet erstellt?

%Vor%

Und dann in Ihrer .m-Datei

%Vor%     
dj2 29.10.2009, 17:44
quelle
9

Ja, es könnte durch einen falschen Parameternamen verursacht werden, z. versuche das:

%Vor%

und es wird eine Ausnahme wie folgt aufgerufen:

%Vor%     
slatvick 24.03.2010 13:25
quelle
5

Ich hatte das gleiche Problem. Stellt sich heraus * Titel ist reserviert und Xcode sagt Ihnen das nicht. Nachdem ich es umbenannt habe, funktionierte es.

    
Flea 31.01.2012 16:33
quelle
1

In meinem Fall hatte ich ein UILabel in einer UIToolBar. Was es für mich reparierte war, die ToolBar zu löschen und eine neue mit einem neuen UILabel hinzuzufügen. Ein IB-Fehler.

    
Joshua Goossen 20.03.2012 14:03
quelle

Tags und Links