Programmieren mit Swift - Für macOS und iOS
Programmieren mit Swift - Für macOS und iOS
UITableViewCell im Detail

Die von Xcode in das Projekt eingefügte Methode tableView:cellForRowAtIndexPath: nimmt uns bei der Programmierung sehr viel Arbeit ab und auch das vorbereitete UITableViewCell-Objekt ist sehr hilfreich. Da wir uns um den Vorgang der Objekt-Initialisierung nicht selbst kümmern müssen, bleibt lediglich die Aufgabe, die Eigenschaft cell.textLabel.text richtig zuweisen, und die Länder erscheinen als Daten in der Tabelle. Das UITableView-Steuerelement bekommt bei jedem Aufruf der Methode genau einen Eintrag aus der Auflistung countryArray, da die Tabelle die Methode für jede Zeile (row) einzeln aufruft.
- (UITableViewCell *)tableView:(UITableView *)tableView
     cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
   
    UITableViewCell *cell =
    [tableView
     dequeueReusableCellWithIdentifier:CellIdentifier];
  
    if (cell == nil)
    {
        cell = [[[UITableViewCell alloc]
        initWithStyle:UITableViewCellStyleDefault
        reuseIdentifier:CellIdentifier] autorelease];
    }

    Country *aCounty =
    [countryArray objectAtIndex:indexPath.row];
    cell.textLabel.text = aCounty.countryName;
   
    return cell;
}

stacks_image_EB22D2AB-EB9D-4D3C-B8F3-A4BE5F8B2C5B
Obwohl die Kommunikation zwischen Tabelle und Tabellen-Controller, in diesem Fall die Klasse RootViewController, tadellos funktioniert, ist dieser Art der Anzeige für die Tabelle die einfachste alle möglichen Darstellungen, und wir sollten versuchen, unsere Anwendung auch optisch aufzuwerten. Da für jede Tabellenzelle ein Objekt der Klasse UITableViewCell verwendet wird, haben wir sehr viele Möglichkeiten einzugreifen, indem wir Farben oder zusätzliche Bilder verwenden.

nächste Seite