uitableviewdatasource uitableviewcontroller uitableviewcell example ios xcode cocoa-touch uitableview

ios - uitableviewcell - uitableviewcontroller swift 4



UITableView con celdas estáticas sin cellForRowAtIndexPath. Cómo establecer un fondo claro? (3)

No estoy del todo seguro de si esto funcionará, porque nunca he intentado utilizar super para administrar las células. Si tu código funciona con super , entonces deberías poder salirte con la tuya haciendo esto para establecer el color de fondo:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell *cell = [super tableView:tableView cellForRowAtIndexPath:indexPath]; cell.backgroundColor = [UIColor clearColor]; return cell; }

De cualquier manera, esto me parece una forma extraña de hacer las cosas. Normalmente, las celdas se crean y reutilizan en el método en sí, según el código de punto de UITableView UITableView predeterminado, sin llamar a super .

Tengo una UITableView estática y todo está dispuesto en el Storyboard. En cellForRowAtIndexPath simplemente uso

return [super tableView:tableView cellForRowAtIndexPath:indexPath];

y la mesa de trabajo funciona muy bien. Sin embargo, quiero establecer los fondos de las celdas en [UIColor clearColor] ¿Cómo puedo hacer esto? La tabla tiene 30 celdas, cada una diferente.

Gracias


Prueba este método delegado:

- (void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath { cell.backgroundColor = [UIColor clearColor]; }


Puede configurar un método y llamarlo a su viewDidLoad para obtener todas las celdas y hacer lo que quiera con ellas. Puede usar esto:

NSArray *visibleIndexPaths = [self.tableView indexPathsForVisibleRows];

Para obtener todas las rutas de índice de las celdas actualmente visibles

Luego itere sobre ellos de la siguiente manera

UITableViewCell *cell = nil; for (int i = 0; i < 30; i++) { cell = [self.tableView cellForRowAtIndexPath:[visibleIndexPaths objectAtIndex:i]]; // Do your setup }

También puede hacer referencia a este documento del desarrollador de Apple con la parte " La técnica del contenido de fila estática ".