NSTableView
Thingsがレイアウトを行う方法と同様
のものを構築しようとしています。
彼らがやっていることはNSTableView
、カスタム描画されたを使用していると思いますNSTableCell
-または、おそらくそれはNSSegmentedControl
. NSTableCell
ルートを下ろうとしています。をサブクラス化し、カスタム セルを描画しようとしましたNSTableCellView
(これはすべてテスト用の init メソッドにあります)。
- (id)init {
self = [super init];
if (self) {
_checkbox = [[NSButton alloc] init];
[_checkbox setButtonType:NSSwitchButton];
_textview = [[NSTextView alloc] init];
[self addSubview:_checkbox];
[self addSubview:_textview];
[self setTranslatesAutoresizingMaskIntoConstraints:NO];
NSDictionary *views = NSDictionaryOfVariableBindings(_checkbox, _textview);
[self addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[_checkbox]-[_textview]|"
options:0
metrics:nil
views:views]];
}
return self;
}
@end
かなり自明のようですが、実際には機能しません。制約を満たすことができないというエラーが発生します。サブクラス内で autolayout を使用することはできませんNSTableCellView
か?