2013-06-04 2 views
0

У меня есть редактируемый текст внутри tableviewcell, как полевые заметки в яблочных контактах, но tableviewcell не изменяет размер с помощью textview. Я думаю, что проблема в этом методе. Кто-нибудь может мне помочь?uitableviewcell с uitextview

- (CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    if (indexPath.section == 0 && indexPath.row == 0) 
    { 
     if (self.textView.contentSize.height >= 44) 
     { 
      float height = [self heightForTextView:self.textView containingString:self.model]; 
      return height + 8; // a little extra padding is needed 
     } 
     else 
     { 
      return self.tableView.rowHeight; 
     } 

    } 
    else 
    { 
     return self.tableView.rowHeight; 
    } 
} 
+0

Ваш текст имеет статическую высоту или динамику? и пытаетесь ли вы сохранить высоту в переменной высоты? –

+0

вам нужно снова перезагрузить строку. [tableView reloadRowsAtIndexPaths: [NSArray arrayWithObject: [NSIndexPath indexPathForRow: 0 inSection: 0]] withRowAnimation: UITableViewRowAnimationFade]; это снова воссоздает ваше текстовое поле. Так что держите свой текст. –

ответ

0

Это лучший пример для редактируемой ячейки согласно вашему требованию. UITableViewCell, который автоматически настраивает его высоту при вводе текста, и вы можете легко управлять им.

AutoResizingEditableTableViewCell

Смежные вопросы