我正在子类化NSTextView,并使用以下代码计算内在内容大小,以便在我的自动布局约束中,文本视图的高度随其内容而增长。
这段代码基本能实现预期的功能,但是在初始调用时会返回 (0,0) 的大小。
如果我在创建文本视图后,在我的视图中调用
是否有一种方法可以让
- (CGSize)intrinsicContentSize
{
return [[self layoutManager] usedRectForTextContainer:[self textContainer]].size;
}
这段代码基本能实现预期的功能,但是在初始调用时会返回 (0,0) 的大小。
如果我在创建文本视图后,在我的视图中调用
[self setNeedsLayout:YES]
并在-layout
中使该文本视图的内容大小失效,它将为新的空文本视图返回正确的大小。是否有一种方法可以让
-intrinsicContentSize
返回新文本视图的正确大小,而不更新我的视图布局?
contentSize
,该属性会自动为您维护。 - matt