我有一个包含按钮和文本视图的视图。单击按钮时,文本视图的隐藏状态将更改并显示在视图上。已配置弹簧和支柱,因此文本视图随视图垂直扩展。这一切都在IB中完成
然后我以编程方式将文本插入到 textview 中,但我需要 textview 显示其所有内容,而无需用户滚动。
这是我用来计算 textview 中文本高度的代码:
- (float) getTextViewHeight {
//based on http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/TextLayout/Tasks/StringHeight.html%23//apple_ref/doc/uid/20001809-CJBGBIBB
[textview.textContainer setLineFragmentPadding:0.0];
[textview.layoutManager glyphRangeForTextContainer:textview.textContainer];
return [textview.layoutManager usedRectForTextContainer:self.interactionData.textContainer].size.height;
}
无论是否在 textview 上调用 -sizeToFit,它都会太大或太小(取决于它的内容)。
我需要显示所有内容的文本视图的高度,以便我可以调整视图的大小。
我知道我可能可以使用 NSTextField 作为标签,但我需要一个 NSTextView 来实现它的附加功能(特别是使用封闭滚动视图的标尺视图)。
有人有什么建议吗?