根据包含的文本更改 textView 高度
Posted
技术标签:
【中文标题】根据包含的文本更改 textView 高度【英文标题】:Changing textView height depending of text it contain 【发布时间】:2014-03-12 19:01:58 【问题描述】:我有在用户单击单元格后显示的详细视图控制器,它包含 UIImageView、带有一些文本的文本视图。有时它有几行文本,有时有很多文本。我想要的是动态更改 textView 框架高度,具体取决于它包含的文本量。
这是我尝试过的:
-(void)configureTextView
CGRect frame = self.myTextView.frame;
frame.size.height = self.myTextView.contentSize.height;
self.myTextView.frame = frame;
但它仍然向我显示不适合整行文本的 textView(用户实际上可以上下滚动它,这是我不想要的功能)。如何更改 textView 框架高度的高度,实际上适合整个文本?以及如何测量该 textView 的最终高度大小?
任何建议将不胜感激,谢谢!
【问题讨论】:
【参考方案1】:您可以尝试[self.myTextView sizeToFit];
,然后看看它是否会为您更新。
【讨论】:
没问题。如果它有效,请确保您标记为最佳答案,以便其他人可以看到。 :)【参考方案2】:- (CGFloat)heightForTextView:(UITextView*)textView containingString:(NSString*)string
float height = [self.model boundingRectWithSize:CGSizeMake(widthOfTextView, 20000000)
options:NSStringDrawingUsesLineFragmentOrigin
attributes:@NSFontAttributeName:[UIFont fontWithName:@"Helvetica Neue" size:15]
context:nil].size.height + 16;
return height;
【讨论】:
以上是关于根据包含的文本更改 textView 高度的主要内容,如果未能解决你的问题,请参考以下文章