2016-04-25 20 views
-2

Ich versuche herauszufinden, Pro und Kontra in unter zwei. Beides funktioniert gut.UITableViewCell anpassen

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:  (NSIndexPath *)indexPath 
{ 
    UITableViewCell *tableViewCell = nil; 
    MyChildUITableViewCell *childTableViewCell = 
    (MyChildUITableViewCell*)[tableView dequeueReusableCellWithIdentifier:@"MyChildUITableViewCell"]; 

    tableViewCell = childTableViewCell; 
    return tableViewCell; 
} 

ODER

- (UITableViewCell *)tableView:(UITableView *)tableView  cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    MyChildUITableViewCell *childTableViewCell = nil; 

    childTableViewCell = (MyChildUITableViewCell*) 
    [tableView dequeueReusableCellWithIdentifier:@"MyChildUITableViewCell"]; 
    return childTableViewCell; 
} 
+4

Was hat der Fragetitel mit dem Code zu tun? – Shubhank

Antwort

1

Wie es jetzt ist, sind diese beiden Code Optionen gleich. Es gibt auch keinen besonderen Vor- oder Nachteil, wenn das alles ist, was Sie mit dem Code tun werden.

Der einzige Profi, an den ich denken kann, ist für Option 1, wenn Sie verschiedene Arten von Zellen in der Tabelle haben wollen. Dieser Code wird sich gut für die Behandlung verschiedener Zellentypen eignen.

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:  (NSIndexPath *)indexPath 
{ 
    UITableViewCell *tableViewCell = nil; 

    if (conditionsForCellOfType1) { 
     MyChildUITableViewCell *childTableViewCell = 
     (MyChildUITableViewCell*)[tableView dequeueReusableCellWithIdentifier:@"MyChildUITableViewCell"]; 

     tableViewCell = childTableViewCell; 
    } else { 
     DifferentTypeOfCell *differentCell = 
     (DifferentTypeOfCell*)[tableView dequeueReusableCellWithIdentifier:@"DifferentTypeOfCell"]; 

     tableViewCell = differentCell; 
    } 

    return tableViewCell; 
}