我在我的应用中使用UITextView
,然后根据文字大小设置框架。但是,如果UITextView.size.height
大于8192.0,文本就会消失。
UITextView
是否有最大高度?
修改
到目前为止,我很欣赏所有答案,但我已经能够毫无问题地设置框架了。问题是,如果frame.size.height设置为大于8192.0,则文本完全消失。
我不确定该号码有什么特别之处,但是当我设置高度大于该号码的帧时,它会停止工作。
答案 0 :(得分:1)
注意:在iOS 2.x中,UIView对象的最大大小为1024 x 1024点。在iOS 3.0及更高版本中,视图不再受限于此最大大小,但仍受其使用的内存量的限制。保持视图尺寸尽可能小是符合您的最佳利益的。无论运行哪个版本的iOS,您都应该考虑平铺任何明显大于屏幕尺寸的内容。
它认为这是一个记忆问题而不是特定的高度
答案 1 :(得分:-1)
- (void)textViewDidChange:(UITextView *)textView
{
CGFloat fixedWidth = textView.frame.size.width;
CGSize newSize = [textView sizeThatFits:CGSizeMake(fixedWidth, MAXFLOAT)];
CGRect newFrame = textView.frame;
newFrame.size = CGSizeMake(fmaxf(newSize.width, fixedWidth), newSize.height);
textView.frame = newFrame;
}
答案 2 :(得分:-1)
使用以下代码
CGSize titlesize = [TxtValue.text sizeWithFont:[UIFont fontWithName:@"Helvetica" size:15.0f] constrainedToSize:CGSizeMake(UITextView.frame.size.width, MAXFLOAT) lineBreakMode:NSLineBreakByWordWrapping];
UITextView.frame=CGRectMake(TxtValue.frame.origin.x, TxtValue.frame.origin.y, TxtValue.frame.size.width, titlesize.height);