Altura de tableHeaderView parece ser 0
-
20-09-2019 - |
Pregunta
He intentado anular la segunda tableHeaderView. Pero parece que la altura de la misma en el método heightForHeaderInSection parece ser 0. No puedo explicarlo, tengo que ponerlo en una Ivar porque en el viewForHeaderInSection puedo configurar la vista sin ningún problema.
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
if(section == 0)
return @"Adding a new list";
else
return @"Other lists";
}
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
if(section == 0) {
return tableView.tableHeaderView;
} else {
UIView *view = [[[UIView alloc] initWithFrame:CGRectMake(10, 10, 100, 50)] autorelease];
view.backgroundColor = [UIColor redColor];
return view;
}
}
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
if(section == 0)
return tableView.tableHeaderView.frame.size.height;
else
return 30;
}
Solución
Creo que está confundiendo la cabecera de la tabla y la cabecera de cada sección, son diferentes. No hay una "segunda tableHeaderView", un UITableView
tiene un tableHeaderView
y luego depende de los métodos viewForHeaderInSection
y heightForHeaderInSection
para colocar puntos de vista de cabecera personalizada para cada sección, de lo contrario sólo tiene que utilizar titleForHeaderInSection
para colocar texto allí.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow