Я пытаюсь изменить высоту UITextView, который у меня есть в пользовательской ячейке для моего TableView.Изменение высоты UITextView в cellForRowAtIndexPath
«ОбзорКелл» - это идентификатор этой пользовательской ячейки в наконечнике, а также UITextView «postIntro» перетаскивается в наконечник.
К сожалению, высота не меняется, только после того, как я прокрутил высоту, изменилось. Ячейки, которые видны без прокрутки, являются только высотой по умолчанию от наконечника.
Когда я пытаюсь изменить высоту «postImage», возникает одна и та же проблема.
Это мой код:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"OverviewCell";
OverviewCell *cell = [self.tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
Post *post = [self.posts objectAtIndex:[indexPath row]];
if(!cell)
{
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"OverviewCell" owner:nil options:nil];
for(id currentObject in topLevelObjects)
{
if([currentObject isKindOfClass:[OverviewCell class]])
{
cell = (OverviewCell *)currentObject;
break;
}
}
}
[[cell postImage] setImage:[UIImage imageWithData:post.image]];
[[cell postTitle] setText:post.title];
[[cell postIntro] setText:post.intro];
// Resize the intro textview so the text fits in.
CGRect frame = cell.postImage.frame;
frame.size.height = 20; //cell.postIntro.contentSize.height;
[cell.postIntro setFrame:frame];
NSLog([NSString stringWithFormat:@"Height of textView on indexpath %i is set to %f", indexPath.row ,cell.postImage.frame.size.height]);
return cell;
}
Любые другие предложения, чтобы мой код приветствуется ...
У меня была такая же проблема. То, как я исправил это, было подклассификация 'UITableViewCell', переопределив метод' drawRect: 'и установив высоту' UITextView' в 'textView.contentSize.height'. У меня уже был подкласс UITableViewCell, но вы, вероятно, могли бы просто подклассифицировать UITextView, если это все, что вам нужно. –