В моем основном представлении у меня есть заголовок (метка) и нижний колонтитул (кнопка). В середине есть стол. Таблица берет данные из MutableArray, поэтому количество элементов таблицы различно каждый раз.UITableView динамический размер
Перед и за столом у меня есть несколько вертикальных пространств (задано ограничениями), потому что я хочу иметь некоторое пространство между верхним и нижним колонтитулом и таблицей. Итак, теперь таблица распространяется на всю «среднюю» часть. Хорошо.
Я хочу достичь того, что я не хочу распространять его по всей средней части. Я хочу, чтобы таблица изменялась в соответствии с ее содержимым. Если таблица имеет только одну строку, я хочу показать одну строку и ни одну из пустых строк. Я пробовал:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
int count = accController.connectedAccessories.count;
[tableView setContentSize:CGSizeMake(tableView.contentSize.width, tableView.rowHeight * count)];
return count;
}
Но это не работает. Если добавить эту строку после setContentSize
:
tableView.frame = CGRectMake(tableView.frame.origin.x, tableView.frame.origin.y, tableView.frame.size.width, tableView.contentSize.height);
Это работает, но если у меня есть много вещей, ограничения сломаны и таблицы по сноске. Есть идеи, как это сделать? Спасибо
EDIT: Этот верхний и нижний колонтитулы не являются частью стола. Я просто помещаю ярлык (я называю его заголовком) и кнопкой (нижний колонтитул) в основной вид. И между ними я поставил стол. Это выглядит лучше для моей цели. Я называю это верхним и нижним колонтитулом, но они представляют собой верхний/нижний колонтитул основного вида, а не таблицу ...