У меня есть UITableView, где в некоторых случаях некоторые разделы имеют нулевые строки. Моя цель состоит в том, чтобы, когда это правда, я не хочу, чтобы в табличном представлении было пустое место, оно должно выглядеть так, как будто данных нет.
У меня проблема с заголовком и нижним колонтитулом для разделов, которые отображаются, даже если нет строки, и, несмотря на то, что я переопределил метод делегата для возврата 0.0f.
Вот как это выглядит - вы можете увидеть ~ 20p серого пространства вверху, верхние и нижние колонтитулы по 10p каждый для раздела с 0 строками.
(источник: hanchorllc.com)
Вот мой псевдокод:
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
if ([section hasRow]) {
return 10.0f;
} else {
return 0.0f;
}
}
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
if ([section hasRow]) {
return 10.0f;
} else {
return 0.0f;
}
}
Я проверил, что эти методы вызываются и что происходит правильный путь выполнения.
Один недостаток - этот контроллер представления использует XIB и что UITableView имеет значения заголовка раздела и нижнего колонтитула, установленные на 10,0 (по умолчанию), хотя я думал, что он был переопределен методом делегата, если он реализован.
Это приложение предназначено для 3.0.
Что я делаю неправильно?