Как изменить высоту ячейки Apple tableView на основе размера текста для выбранных ячеек?

Как вы можете видеть на изображении ниже, у меня есть строка, которая показывает биографию, а другая — опыт, оба являются текстовыми представлениями внутри ячейки таблицы. Мне нужно изменить размер ячейки в зависимости от размера текстового представления. для этих 2 полей на основе длины строки.

- (CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{

if (indexPath.row == 5) {

   return  bio_text.contentSize.height +10; //Not dynamic
}

if (indexPath.row == 6) {

   return  bio_text.contentSize.height +10; //Not dynamic
}

}

введите здесь описание изображения


person Eddwin Paz    schedule 28.05.2014    source источник
comment
Я не вижу знака вопроса в этом вопросе.   -  person Michael Dautermann    schedule 29.05.2014
comment
изменил мой титул @MichaelDautermann   -  person Eddwin Paz    schedule 29.05.2014


Ответы (1)


Вы знаете, насколько высок UITextView, потому что у каждого UITextview есть ".contentSize", что означает, что у вас есть высота этого текстового представления.

Если вы собираетесь отображать весь текст в текстовом представлении в определенной ячейке таблицы, то это просто вопрос возврата высоты текстового представления. Если вам нужно прокрутить текстовое представление (потому что слишком много содержимого для удобного отображения в ячейке таблицы), вам нужно получить высоту кадра текстового представления и использовать ее.

person Michael Dautermann    schedule 28.05.2014
comment
Это не работает, и оно изменяет только 1, если вы пытаетесь сделать другую ячейку, которая не работает, она возвращает только 1 значение. - person Eddwin Paz; 29.05.2014
comment
посмотрите и посмотрите, какой у вас bio_text рост. Похоже, что он не установлен должным образом при переходе к методу heightForRowAtIndexPath:. - person Michael Dautermann; 29.05.2014
comment
p.s. И я бы тоже хотел зарабатывать 250 долларов в час, как ваш Майкл Смит. - person Michael Dautermann; 29.05.2014
comment
Jajajaj это фиктивные данные для заполнения максимального размера, посмотрите, как это будет выглядеть при запуске - person Eddwin Paz; 29.05.2014