根据字符串的长度更新 NSTextField 的大小
Updating the size of NSTextField with respect to length of the string
我正在尝试更新 NSTextField 的高度 w.r.t 字符串的长度,但如果字符串较轻,最后一部分会被剪切 off.This 是我的代码。
self.solutionTextView.frame = CGRectMake(self.solutionTextView.frame.origin.x, self.solutionTextView.frame.origin.y, self.solutionTextView.frame.size.width + 25 ,self.solutionTextView.frame.size.height + 25);
//self.solutionTextView.sizeToFit()
我做错了什么?
如果允许 NSTextField 换行字符串,则以下步骤是确定所需字段高度的标准(或通常?或更多可能的方法之一?)方法。假设字段宽度给定:
NSRect frame = [textField frame];
现在让它变得非常高:
NSRect constraintBounds = frame;
constraintBounds.size.height = 10000.0;
[textField setFrame: constraintBounds];
并设置字符串:
[textField setStringValue:theString];
现在询问自然色尺码:
NSSize naturalSize =
[[textField cell] cellSizeForBounds:constraintBounds];
大功告成:
frame.size = naturalSize;
[textField setFrame:frame];
我正在尝试更新 NSTextField 的高度 w.r.t 字符串的长度,但如果字符串较轻,最后一部分会被剪切 off.This 是我的代码。
self.solutionTextView.frame = CGRectMake(self.solutionTextView.frame.origin.x, self.solutionTextView.frame.origin.y, self.solutionTextView.frame.size.width + 25 ,self.solutionTextView.frame.size.height + 25);
//self.solutionTextView.sizeToFit()
我做错了什么?
如果允许 NSTextField 换行字符串,则以下步骤是确定所需字段高度的标准(或通常?或更多可能的方法之一?)方法。假设字段宽度给定:
NSRect frame = [textField frame];
现在让它变得非常高:
NSRect constraintBounds = frame;
constraintBounds.size.height = 10000.0;
[textField setFrame: constraintBounds];
并设置字符串:
[textField setStringValue:theString];
现在询问自然色尺码:
NSSize naturalSize =
[[textField cell] cellSizeForBounds:constraintBounds];
大功告成:
frame.size = naturalSize;
[textField setFrame:frame];