我在窗口的视图中有一个 NSTextField。
我已经尝试了所有 IB 选项,但似乎无法实现以下目标:
NSTextField 中有一个很长的句子——当窗口被调整为更窄的宽度时,NSTextField 也会变得更窄——这会将文本推到下一行。然而,任何被推到 NSTextField 底部下方的文本都会被简单地截断。我希望 NSTextField 垂直扩展其大小以适应更高的文本。
这可以自动完成还是应该观察 Window resize 事件并重新计算 NSTextField 的高度?
我需要支持 10.7 和 10.8,我尝试同时使用 Autolayout 和 Autoresizing 但无济于事。
编辑 - 这是基于 Jerry 的回答(以及他来自 Github 的类别)的代码:
-(void)setFrame:(NSRect)frameRect{
NSRect myFrame = CGRectMake(frameRect.origin.x, frameRect.origin.y, frameRect.size.width, [self.stringValue heightForWidth:frameRect.size.width attributes:nil]);
[super setFrame: myFrame];
}