Можно ли изменить высоту только одной ячейки в сгруппированном представлении таблицы?
У меня есть табличный вид с 2 разделами из 3 и 2 строк... Я бы изменил высоту строки второй строки второй секции...
Как я могу это сделать? Спасибо!
Можно ли изменить высоту только одной ячейки в сгруппированном представлении таблицы?
У меня есть табличный вид с 2 разделами из 3 и 2 строк... Я бы изменил высоту строки второй строки второй секции...
Как я могу это сделать? Спасибо!
Вы можете посмотреть этот метод:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
В вашем случае код должен выглядеть так:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.section == 1 && indexPath.row == 1) {
return SPECIAL_HEIGHT;
}
return NORMAL_HEIGHT;
}
Вы можете найти более подробную информацию о метод здесь
В iOS 8 и выше мы можем использовать высоту Динамическая таблица таблицы.
Использование этой функции UITableviewCell
получить ее высоту из ее содержимого и нам не нужно писать heightForRowAtIndexPath
Все, что мне нужно сделать в viewDidLoad()
tableView.estimatedRowHeight = 44.0;
tableView.rowHeight = UITableViewAutomaticDimension;
Если cell
содержит uilabel
. затем примените ограничения к uilabel
Убедитесь, что вы изменили Label --Lines-- на 0
Ячейка автоматически вырастет с содержимым uilabel
:
Вы можете реализовать следующий метод для возврата высоты строки по указанному пути указателя:
Посмотрите
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
Для индексного пути просто проверьте, какая строка и раздел и соответственно отрегулируйте высоту.