UITableViewController wirft Exception !?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • UITableViewController wirft Exception !?

    Hallo zusammen,

    Bin vor ein paar Tagen ganz frisch in die OS X Entwicklung eingestiegen und bin schon auf meine ersten Hürden gestoßen, die mir im Weg stehen.
    Ich lerne mit Hilfe eines Tutorials aus der video2brain Reihe und komme an folgender Stelle einfach nicht weiter.

    Auf meinem Storyboard befindet sich lediglich ein Table View Controller. Zu diesem erstelle ich ein neue Klasse "ViewController", welche von UITableViewController
    erbt. Nun soll ich laut video folgende Methoden der Klasse ViewController bearbeiten:

    Quellcode

    1. - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
    2. {
    3. return 0;
    4. }
    5. - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
    6. {
    7. return 0;
    8. }


    Das Problem ist nun, dass wenn ich den return-Wert der Methode numberOfRowsInSection auf eine von 0 verschiedene Zahl verändere,
    mir plötzlich eine Exception in der main um die Ohren fliegt:

    Quellcode

    1. //
    2. // main.m
    3. // TableViewSB
    4. //
    5. #import <UIKit/UIKit.h>
    6. #import "AppDelegate.h"
    7. int main(int argc, char * argv[])
    8. {
    9. @autoreleasepool {
    10. return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); <--- Thread1: signal SIGABRT
    11. }
    12. }
    Alles anzeigen


    Bei dem Kerl im Video funktioniert das alles allerdings wunderbar :D
    Ich hoffe ich hab mich professionell genug ausgedrückt und hoffe jemand kann mir helfen^^...
    Der Rest des Videos baut auf diesem Projekt auf... deswegen muss ich diese Exception unbedingt beseitigen.

    Viel dank schon mal im Voraus

    LG Saladin
  • Das Problem ist, dass wenn da keine 0 sondern ein Wert > 0 zurückgegeben wird, die Tabelle was Zeichnen möchte. Dazu wird Sie dann Ihre Datasource befragen und vmtl. gibt es die nicht oder sie liefert keine Werte...

    da ich das Video nicht kenne, weiss ich nicht, ob Du da was vergessen hast oder ob das Video einfach nur nen Fehler hat.

    Volker
  • wenn du nur eine section hast, dann brauchst du entweder die numberOfSections methode gar nicht , oder da muss ne 1 rein

    und du müsstest ein Array haben, das als quelle für daten dient, wenn du jetzt in der CellForRowAtIndex auf einen ArrayIndex zugreifst den es nicht gibt, dann ist die app halt weg

    ist das ein Youtube Video? dann zeig mal das video
    Ich weiß nicht immer wovon ich rede aber ich weiß das ich Recht habe. :saint:
  • Hallo saladin,

    leider sind die "video2brain" Videos etwas älter und manches, was vorher noch ging, geht jetzt nicht mehr bzw. ist sehr abhängig von der verwendeten XCode-Version.

    Zum einfachen Ausprobieren sollte aber folgendes gehen:
    hinter dem ersten "return" ersetz mal die 0 durch eine 1 (das ist die Methode die z.B. im iOS-Telefonbuch für den Index nach Buchstaben verantwortlich ist).

    hinter dem zweiten "return" ersetzt Du die 0 mal doch 5. Damit solltest Du die App im Simulator laufen lassen können UND Du kannst ja mal auf die leeren Tabellenzeilen klicken. Die ersten fünf Zeilen sollten sich nun etwas anders verhalten (eben zum Anklicken).

    Hoffe es klappt so.
    Gruß iet
    ----
    Macht's gut und danke für den Fisch
  • saladin schrieb:

    Danke für die Antworten...

    Das Video gibt es zufällig 4 free

    video2brain.com/de/videos-77075.htm

    Und der Vorschlag von ichesstoast hat auch nicht funktioniert...
    ich glaube auch, dass das Ganze was mit den XCode-Versionen zu tun hat, aber das hilft mir nicht weiter.. :/

    lg saladin


    Wo holst Du denn die Daten her, welche in dem TableView angezeigt werden sollen? Was soll denn da angezeigt werden?
    Ich bin gegen Signaturen!!!