我目前工作的一个应用程序,用户可以调整字体在一个UITextView达50pt。就其本身而言,他们也可以用这些UITextView中的文字编辑文字(我的老板想要限制任何类型的规定行为)。 UITextView然后动态调整垂直大小以适应文本数量。一切都很好。但是,一旦这个UITextView的高度超过一定的大小,任何后续的字符将被添加,但将被视为隐藏,除非我允许UITextView滚动。我不得不补充说,这是一个边缘情况。但是,由于该应用鼓励这种行为,因此偶尔可能会遇到此限制。
我是否认为UITextView的高度实际上是有限制的?或者这个问题可能是其他问题?
编辑
好吧,也许我误解我自己的情况。我没有考虑到textView位于tableViewCell中的事实,而我实际上正在做的是调整单元格的大小,因为textView的大小增加了。那么对tableViewCell的高度有限制吗?
回答我的问题
谢谢@jere和@ A-现场为您解答他们帮助很大。我知道自己像个白痴。
A-Live指出最大浮动值,突然让我意识到我做出了这样一个明显而公然的错误。
为了适当调整textView的大小,使用约束来建立CGSize。为了确保高度可以达到它想要的高度,一个被认为不可达的高数被用于高度约束(1000)。正如你所猜测的那样,为了达到这个目的,1000是不够的,因此textView停滞不前。我想这就是为什么提供代码很重要。
CGSize textSize = [textView.text sizeWithFont:textView.font constrainedToSize:CGSizeMake(textView.frame.size.width - PADDING * 2, 1000.0f) lineBreakMode:UILineBreakModeWordWrap];
最准确的答案,以更新的问题是@jere,因为这已经向我指出,我将不得不防止电池尺寸从以往任何时候都达到这个神奇数字的“2009”。
你能澄清“问题”吗?我不太了解你如何调整视图的大小:a。直到达到底部超视图边缘(这是有道理的,应该与用户体验匹配)或b。无限的(除非superview是另一个scrollView使其表现相同,否则没有意义)。 –
是的,也许我的回答是不够描述。我已经为我的原始问题添加了一个编辑。 – WillSeabrook
我不认为它是受限于(由设计)除了类型的最大值,是否有任何特别的原因,这样的担心?您可以通过https://developer.apple.com/library/ios/#documentation/graphicsimaging/reference/CGGeometry/Reference/reference.html查看CGRect规范,查找CGFLOAT_MAX。 –