何も表示されないときaddSubview:
。テキストと色を設定して表示します。また、xcode の UI バルダーのカスタム ビューにビューを手動で追加すると、テキストと色で問題なく表示されます。
.m ファイル
- (void)displayString:(NSString *)title {
NSRect frame = NSMakeRect(10, 10, 200, 17);
NSTextfield *newfield = [[NSTextField alloc] initWithFrame:frame];
[newfield setBezeled:NO];
[newfield setDrawsBackground:NO];
[newfield setEditable:NO];
[newfield setSelectable:NO];
[newfield setStringValue:title];
[newfield setTextColor:[NSColor blueColor]];
[test addSubview:newfield];
if([test.subviews containsObject:newfield]){
NSLog(@"view there"); // i get this message
}
if([newfield isHidden]){
NSLog(@"view hidden"); //i dont get this message
}
NSLog(@"view set");
}
test
私が適切にリンクしたものですNSView
(カスタムビューはxcodeがそれを呼んでいるものです)。
したがって、テキスト フィールドを作成してNSView
手動で追加し、テキストと色を追加して同じコードを実行すると、すべて正常に動作しますが、プログラムでビューを設定しようとすると、この問題が発生します。また、ビルダーでビューを作成しようとしたがNSView
、それを配置してから試みたのaddSubview:
ではなく、それも機能しないため、ビューの作成ではないことを確認しました。さらにコードが必要な場合はお知らせください。
開発: nsview (カスタム ビュー) に既に要素があり (手動で追加され、何でもかまいません)、テキスト フィールドを追加すると、機能します (nsview で両方のビューを取得します)。サブビューはテストされていますが、表示されません。