2010-03-29 16 views
6

Tengo 8 celdas que se están construyendo en mi UITableViewController. Me gustaría saber cómo puedo mostrar un indicador de divulgación en las celdas 4 y 8. En este momento estoy construyendo enConfiguración de un tipo de accesorio UITableViewCell en algunas celdas, pero no en todas

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 

aunque soy plenamente consciente de que va a añadir un indicador de la divulgación a cada célula

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 

Respuesta

18

usar un simple if:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    ... // do whatever 
    UITableViewCellAccessoryType accessoryType = UITableViewCellAccessoryNone; 
    if (indexPath.row == 3 || indexPath.row == 7) { 
     accessoryType = UITableViewCellAccessoryDisclosureIndicator; 
    } 
    cell.accessoryType = accessoryType; 
    ... // do whatever 
} 
+0

@EthanB veo esta sucediendo ahora mismo. – Morkrom

+0

@Morkrom Tengo suficiente representante ahora para arreglarlo yo mismo. :) – EthanB

2

Usted sabe que el indexPath, ¿por qué no sólo condicionalmente aplico la divulgación indicador cuando

if((indexPath.row == 3) || (indexPath.row == 7)) 

?

(indexPath.row está basado en 0, por supuesto ... el cuarto es 3 y el octavo es 7. Y usted debe usar # define o alguna otra forma de mantener los números mágicos de allí también.)

Cuestiones relacionadas