Table View - Table View Cell - mit zwei Label - json - array

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

  • Table View - Table View Cell - mit zwei Label - json - array

    Hallo zusammen,

    ich bin neu hier und dies ist meine erste Frage.

    Ich habe gerade mit Objective-C angefangen und bin noch am ausprobieren.

    Mein Problem ist wie folgt:

    Ich habe eine "Table View" und dazu eine "Table View Cell". In die Cell habe ich noch zwei Label hinzugefügt.

    Ich bekomme meine Daten über Json, die ich in ein Array packe. Alle Daten kann ich mir anzeigen in der Cell. Aber wie kann ich die Label ansprechen und mit Inhalt füllen?

    Ich habe das folgende (SUPER!) Tutorials verwendet:

    codewithchris.com/iphone-app-c…mysql-database/#filltable


    An der Stelle "Then in ViewController.m, add code like this:" sieht man im Codebeispiel von Zeile "59 - 74" :

    Quellcode

    1. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    2. {
    3. // Retrieve cell
    4. NSString *cellIdentifier = @"BasicCell";
    5. UITableViewCell *myCell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
    6. // Get the location to be shown
    7. Location *item = _feedItems[indexPath.row];
    8. // Get references to labels of cell
    9. myCell.textLabel.text = item.address;
    10. myCell.textLabel.text = item.price;
    11. myCell.textLabel.text = item.text;
    12. return myCell;
    13. }
    14. @end
    Alles anzeigen


    wie der Inhalt von "item.address" in die Celle geschrieben wird. Ich habe aber mehremöchte aber die beiden Label mit dem Inhalt befüllen.



    Ich hoffe ich konnte mich so ausdrücken das es verstanden wird und wäre für eure Hilfe sehr dankbar!!!! :)
  • Quellcode

    1. myCell.textLabel.text = item.address;
    2. myCell.textLabel.text = item.price;
    3. myCell.textLabel.text = item.text;

    Stand das so im Tutorial? Ich glaube nicht.

    Du musst für die Lables jeweils ein Outlet erstellen. Auf dieses greifst Du z.B. mit "myCell.deinOutlet.text" zu
    Ich bin gegen Signaturen!!!
  • echt super das forum, jetzt schon :)

    Funktioniert leider nicht :( , hast du (darf ich du sagen?) vielleicht noch eine Idee?

    ViewController.h hat jetzt:

    Quellcode

    1. @property (weak, nonatomic) IBOutlet UILabel *price;
    2. @property (weak, nonatomic) IBOutlet UILabel *address;


    und in der ViewController.m mache ich dann:

    Quellcode

    1. myCell.price.text = item.price;
    2. myCell.address.text = item.address;




    hab irgendwo Sachen in der Art gefunden aber die funktionieren nicht:

    Quellcode

    1. myCell.detailTextLabel.text = [item objectAtIndex:indexPath.row];
    2. myCell.textLabel.text = [item objectAtIndex:indexPath.row];
  • Klar darfst Du duzen, wir sind hier im Forum eine Familie und da wird geduzt!

    Die Outlets sind aber schon mit dem Labels verbunden?

    Quellcode

    1. myCell.detailTextLabel.text = [item objectAtIndex:indexPath.row];
    2. myCell.textLabel.text = [item objectAtIndex:indexPath.row];


    Das sind Standard Cells. Keine Ahnung, wie Deine custom cell aussieht. Zeig mal.
    Ich bin gegen Signaturen!!!
  • Ich habe eigentlich so ziemlich das Tutorial nachgemacht.

    Dann aber im Storyboard die zwei Label hinzugefügt. Und ab da weiß ich nicht mehr so richtig weiter. Sorry das ich so extrem "Anfänger" bin.

    Dann nach dem du das mit den Outlet geschrieben hast habe ich mit "ctrl" in der "ViewController.h" folgendes erstellt. :

    Quellcode

    1. @property (weak, nonatomic) IBOutlet UITableView *title;
    2. @property (weak, nonatomic) IBOutlet UITableView *price;



    Und dann dachte ich das ich jetzt "title" und "price" in der ViewController.m "ansprechen" kann.

    Oder was meinst du? Oh man, wahrscheinlich ist das zu spät, ich habe den ganzen Abend probiert und bin einfach zu verwirrt :(
  • Ich muss wahrscheinlich noch sowas in der Art machen:

    Quellcode

    1. - (void)viewDidLoad
    2. {
    3. [super viewDidLoad];
    4. // Set this view controller object as the delegate and data source for the table view
    5. self.listTableView.delegate = self;
    6. self.listTableView.dataSource = self;
    7. self.titlee.text = self;
    Alles anzeigen



    Also genau wie mit der listTableView ...
  • cocoaC schrieb:

    Ich muss wahrscheinlich noch sowas in der Art machen:

    Quellcode

    1. - (void)viewDidLoad
    2. {
    3. [super viewDidLoad];
    4. // Set this view controller object as the delegate and data source for the table view
    5. self.listTableView.delegate = self;
    6. self.listTableView.dataSource = self;
    7. self.titlee.text = self;
    Alles anzeigen


    Wow wow wow, langsam!
    Vielleicht solltest Du erstmal mit den Grundlagen anfangen.
    Ein super Buch: openbook.galileo-press.de/apps…keln_fuer_iphone_und_ipad
    Ich bin gegen Signaturen!!!
  • danke, hab schon gefunden ... mir hat eigentlich nur die Zeile gefehlt:

    Quellcode

    1. myCell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdentifier];

    und dann funktioniert auch

    Quellcode

    1. myCell.detailTextLabel.text = item.XX;