在尝试论坛中的建议后,我无法获得 UITextView 的真实高度,例如:
此解决方案使 UItextView 根据其内容调整大小,但我需要知道 UItextView 的实际高度,以便我可以定位其余视图而不会重叠。
我有一个 UITableView,每个单元格显示一个 UITextView。
我得到了 UITextView 的大小,调整它的大小并使用以下代码调整包含它的单元格的大小:
//self.descriptionTV is a UITextView
self.descripcionTV.text = self.detailItem.descripcion;
//I calculate the height (altura) to size the UITextView and to later size the cell
NSNumber *altura = [NSNumber numberWithFloat:
(self.descripcionTV.contentInset.top + self.descripcionTV.contentSize.height + self.descripcionTV.contentInset.bottom)];
//Here I size the UITextView
CGRect frame = self.descripcionTV.frame;
frame.size.height = altura.floatValue;
self.descripcionTV.frame = frame;
//I use this in tableView:heightForRowAtIndexPath:
[self.cellsToLoad addObject:[NSArray arrayWithObjects:self.cellDescripcion, altura, nil]];
-(float)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
//La altura de la celda la tenemos almacenada en el array cells
float altura = [[[self.cellsToLoad objectAtIndex:indexPath.row] objectAtIndex:1] floatValue];
return altura;
}
不幸的是,这并没有完成工作。之后的单元格被一些像素重叠。我之前一直在使用 UILabel 而不是 UITextViews 没有问题。
我知道一个解决方案只是手动增加计算的高度,但我想知道是否有真正的方法来获取 UITextView 的大小。