2013-02-19 84 views
0

我试图让UITextView动态调整它的内容大小。有时,文本视图的高度有时会为100。如何让UITextView动态调整它的内容大小

到目前为止我尝试过的一切都没有奏效。

我试过以下viewDidLoadviewDidLayoutSubviews。 下面的代码:

CGRect frameDesc = self.descriptionDeal.frame; 
frameDesc.size.height = self.descriptionDeal.contentSize.height; 
self.descriptionDeal.frame = frameDesc; 

self.descriptionDeal.backgroundColor = [UIColor redColor]; 

我添加了背景颜色,所以我可以看的见的大小和它不施胶内容。

我也试过:

[self.descriptionDeal sizeToFit]; 

而且,如果它影响什么,但在其中的UITextView的布局大小设置有故事不知道。我认为上面的代码会覆盖它,但有些东西不能正常工作。

感谢您的帮助

+0

http://stackoverflow.com/a/7501164/454165 – 2013-02-19 15:00:38

回答

0

尝试可以用来获取将被要求到一个视图中显示的字符串的尺寸以下字符串的方法。您可以根据您从其中一种方法获得的CGSize更改textview的框架。如果您不打算在项目中使用自动布局来支持早期版本的iOS,请使用此选项。

- (CGSize)sizeWithFont:(UIFont *)font; // Uses NSLineBreakByWordWrapping 
- (CGSize)sizeWithFont:(UIFont *)font forWidth:(CGFloat)width lineBreakMode:(NSLineBreakMode)lineBreakMode; 
- (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size; // Uses NSLineBreakModeWordWrap 
- (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size lineBreakMode:(NSLineBreakMode)lineBreakMode; // NSTextAlignment is not needed to determine size