Ios 根据文本的不同更改UITextView高度
我有一个应用程序,有许多单元格的表格,当用户点击它,然后细节视图控制器出现。局部视图控制器有一个不可编辑的图像和Ios 根据文本的不同更改UITextView高度,ios,objective-c,uitextview,Ios,Objective C,Uitextview,我有一个应用程序,有许多单元格的表格,当用户点击它,然后细节视图控制器出现。局部视图控制器有一个不可编辑的图像和UITextView,它仅用于显示文本(就像标签一样)。它包含的文本来自xml文件,有时有几行,有时有很多文本 我想要的是-使UITextView高度根据其文本量而变化。例如,对于几行,它的高度可能为50像素,在其他情况下为300像素。如何测量正确的高度并将其设置为UITextView?我想再次指出,它只用于显示文本,而不是以任何方式进行编辑。我的第二项任务是测量finalUIText
UITextView
,它仅用于显示文本(就像标签一样)。它包含的文本来自xml文件,有时有几行,有时有很多文本
我想要的是-使UITextView
高度根据其文本量而变化。例如,对于几行,它的高度可能为50像素,在其他情况下为300像素。如何测量正确的高度并将其设置为UITextView
?我想再次指出,它只用于显示文本,而不是以任何方式进行编辑。我的第二项任务是测量finalUITextView
height并将其存储在某个变量中
这就是我尝试过的:
CGRect textViewRect = self.myTextView.frame;
textViewRect.size.height = self.myTextView.contentSize.height;
self.myTextView.frame = textViewRect;
但显然它不起作用。你知道怎么做到吗
任何建议都将不胜感激,谢谢 使用UIView的这种方法:
- (CGSize)sizeThatFits:(CGSize)size
通常,您希望视图的宽度受到限制,但高度不受限制。因此,您传入一个宽度为所需的大小,高度为10000.0,因此它可以根据需要设置为所需的高度。这将根据视图的当前内容返回视图需要的大小 试试这个
UITextView *textview1;
[textview1.text sizeWithFont:text.font constrainedToSize:textview1.frame.size];
此方法的副本已弃用。对于ios7,您可以使用[view.text boundingRectWithSize:(CGSize)选项:(NSStringDrawingOptions)属性:(NSDictionary*)上下文:(NSStringDrawingContext*)]