2
对于我的NSSegmentedControl
,我用它来显示一个条来控制NSTableView
。我有代码设置来以编程方式控制大小:NSSegmentedControl中的等尺寸单元格
for (NSInteger i = 1; i <= numberOfSegments; i++) {
CGSize textSize = [[NSString stringWithFormat:@"Workspace %ld", (long)i] sizeWithAttributes:@{NSFontAttributeName: [NSFont systemFontOfSize:13.0f]}];
NSInteger segmentWidth = self.workspaceControl.frame.size.width/numberOfSegments;
if (textSize.width > segmentWidth) {
[self.workspaceControl setLabel:[NSString stringWithFormat:@"%ld", (long)i] forSegment:i - 1];
} else {
[self.workspaceControl setLabel:[NSString stringWithFormat:@"Workspace %ld", (long)i] forSegment:i - 1];
}
[self.workspaceControl setWidth:segmentWidth forSegment:i - 1];
}
这个工作,由一个小问题发生。
在开始的时候(有一个段),它看起来像这样:
正如我改变值,右侧被稍微裁剪。
然后回一个片段:
约束如下:
我非常困惑的削减(可能是因为几个像素t0o大),但我不知道如何解决它,或者有更好的方式来获得均匀间隔的细胞?