hat die "ChatView" -Nib geladen, aber kein UITableView bekommen. '

8

Ich habe einen benutzerdefinierten UITableViewController ("ChatView"), der eine Ausgabe für eine tableView hat. Im Interface Builder habe ich das TableView in der Nib mit dem Outlet verbunden. Wenn die Ansicht geladen wird, erhalte ich den obigen Fehler. Die Ansicht wird über einen Tabcontroller geladen.

Ich habe etwas über den Fehler geforscht und ich kann das Problem nicht aufspüren. Ich würde mich freuen, wenn jemand mich in die richtige Richtung bringen könnte, um das zu lösen.

%Vor%

Danke

    
Nick 24.04.2011, 19:42
quelle

8 Antworten

11

Hatte ein ähnliches Problem. Der Laufzeitdump sagt:

  

geladene Feder, aber kein UITableView

erhalten

Ich hatte alles auf dem Storyboard in Ordnung gebracht. Ich hatte einen ViewController als Hauptklasse und hatte ein UITableView-Objekt mit einer benutzerdefinierten Zelle innerhalb.

Das Problem war jedoch, dass meine benutzerdefinierte Klasse "irgendwie" zu einem UITableView wurde anstatt:

%Vor%

Nachdem ich den Storyboard-Typ mit dem benutzerdefinierten Klassentyp abgeglichen hatte, war alles in Ordnung.

Die Moral der Geschichte, xCode und der Compiler ist normalerweise richtig. Überprüfen Sie, ob Ihre Klassen übereinstimmen.

    
Gerald 23.03.2012 16:01
quelle
6

Wenn Ihre Klasse ein UITableViewController ist, muss der view outlet mit der Tabellenansicht verbunden sein. Wenn Sie eine Ansicht wollen, die ein UITableView enthält, dann machen Sie den Controller einfach zu UIViewController , was mit den Protokollen UITableViewDelegate und UITableViewDataSource übereinstimmt und das wird verschwinden.

    
rharter 08.11.2012 16:13
quelle
1

ChatViewController ist eine Unterklasse von UITableViewController , deshalb nimmt der Compiler an, dass seine View-Eigenschaft ein UITableView ist, was aber nicht der Fall war, deshalb haben Sie diesen Absturz bekommen. Ein UITableView -Objekt muss mit Ihrem File's Owner verknüpft sein:

    
Malloc 11.03.2013 12:45
quelle
0

Nun, tatsächlich ist ein UITableViewController kein UITableView. Daher ist die Fehlermeldung korrekt ... Ich kenne Ihren Code nicht, aber sollte ChatViewCotroller nicht tatsächlich ein ChatView sein und auf einem UITableView basieren?

    
Axel 24.04.2011 20:34
quelle
0

In der MainView.xib habe ich den View-Controller als "Table View Controller" in den Eigenschaften des Tab Controller-Attributs eingestellt. Dies behebt das Problem.

    
Nick 24.04.2011 20:38
quelle
0

In meinem Fall war mein View-Controller wirklich kein UITableViewController. Ich dachte es war, weil ich es auf meinem Storyboard so aussehen ließ. Tatsächlich war es ein Navigationscontroller und ich hatte ein UITableView darauf fallen lassen.

Ich konnte feststellen, dass es sich in Wirklichkeit nicht um einen UITableViewController handelte, indem ich die Datei .storyboard in einem Texteditor betrachtete. Es ist XML, das ziemlich einfach zu lesen ist. Um das Problem zu lösen, löschte ich einen UITableViewController auf meinem Storyboard, kopierte alles aus dem Navigationscontroller, den ich verwendet hatte, und löschte dann den Navigationscontroller.

    
Tyler Collier 17.12.2011 07:33
quelle
0

Ich habe auch die "load _ __ _ _ -Nib gelesen, aber kein UITableView bekommen." "I don ' Ich weiß, was es verursacht hat, aber es löste sich für mich, wenn ich einfach die anstößige Szene in meinem Storyboard bewegte (wie ein paar Pixel nach rechts und dann zurück zur ursprünglichen Position), die Datei speicherte, säuberte und neu erstellte.

    
moliveira 10.04.2014 16:03
quelle
0

Ich habe auch diese Fehlermeldung erhalten. Was mir passiert ist, dass ich bei gedrückter Strg-Taste ein Objekt View Controller auf mein Storyboard gezogen habe, aber die benutzerdefinierte Klasse war eigentlich eine Unterklasse UITableViewController und keine UIViewController-Unterklasse.

Zur Laufzeit, als meine benutzerdefinierte UITableViewController-Unterklasse ihre Ansicht geladen hat, erwartete sie eine UITableView, aber sie erhielt eine UIView vom Interface Builder. Die Fehlerbehebung bestand darin, das alte View-Controller-Objekt aus dem Storyboard zu löschen und bei gedrückter Strg-Taste stattdessen ein Tabellenansicht-Controller-Objekt zu ziehen.

    
Pietro Rea 27.05.2014 00:15
quelle

Tags und Links