UITextView位于UITableViewController中的静态单元格中,并添加代码descriptionText.sizeToFit()
,以便单元格高度可以适合文本。
细胞工作正常,文本输入很少,当得到更多文本时,细胞底部的空白也变得更高。
我曾尝试添加代码descriptionText.contentInset = UIEdgeInsetsMake(0, 0, 0, 0)
,但也无法使用。
有任何帮助吗?感谢。
更新: 奇怪的事情,当在ios8上运行时,它仍然显示空白,但是当滚动到底部以便隐藏单元格,然后滚动回到顶部,空白被删除!这意味着它在正常情况下工作。问题是什么?
答案 0 :(得分:0)
这是一种方法:通过计算每个UITextView的高度并在heightForRowAtIndexPath:
方法中返回高度(如果需要,可以填充+)。
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *body = self.messages[indexPath.row];
CGRect rect = [body boundingRectWithSize:CGSizeMake([width of your UITextViews], CGFLOAT_MAX) options:(NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading) attributes:@{NSFontAttributeName:[UIFont fontWithName:@"HelveticaNeue" size:[Font Size]} context:nil];
return rect.size.height;
}
答案 1 :(得分:0)
你必须告诉视图不要自动调整插图:
文档说:
如果您不希望滚动视图的内容插入是自动的 调整后,自动设置调整ScrollViewInsets为NO。 (默认值 automaticAdjustsScrollViewInsets的值为YES。)
因此,您必须将以下代码行添加到viewDidLoad:
self.automaticallyAdjustsScrollViewInsets = false;
或者您可以覆盖automaticallyAdjustsScrollViewInsets
- 方法并返回false
。