设置UITextView高度以适合Objective c中的内容高度

时间:2011-10-11 02:15:03

标签: objective-c

我的UITextView设置有以下代码。

CGRect itemDescFrame = CGRectMake(20, 160, 280, 200);
UITextView *itemDesc = [[UITextView alloc] initWithFrame:itemDescFrame];
...
itemDesc.editable = NO;
itemDesc.scrollEnabled = NO;
...

我已禁用UITextView滚动条,但底部的部分内容正在隐藏。如何设置UITextView高度以适应内容高度?

由于

更新:

NSLog(@"frame %@", itemDesc.frame.size.height);
NSLog(@"content %@", itemDesc.contentSize.height);

结果:

2011-10-11 11:00:18.010 abc[1606:207] frame 200.000000
2011-10-11 11:00:18.010 abc[1606:207] content 200.000000

2 个答案:

答案 0 :(得分:3)

作为UIScrollView的子类,UITextView有一个名为contentSize的属性,在UITextView的情况下,应该是文本占用后的大小是放在视图中。尝试将文本视图框架的高度设置为contentSize的高度。

答案 1 :(得分:0)

只需添加此行代码即可强制框架根据其包含的文本高度更新其大小:

[self.myTextView sizeToFit];

请注意,如果您想添加其他填充,可以设置textContainerInset

当文本内容发生变化和轮换时,您会想要调用它。为了便于查看高度调整,请在UITextView上设置背景颜色。