インターフェイス ビルダー (左側にある小さな青いボックスの 1 つ (Xcode 4.5.2)) に接続されているオブジェクトがあり、慣れているように NSTextField へのバインディングを作成しました。また、テキストを合成しました。メインファイルのフィールド (理由はよくわかりませんが、これが必要であることは確かです). ただし、 setStringValue:@"a string" をテキストフィールドに送信しようとすると、機能しません. また、試してみると、テキスト フィールド オブジェクトをコマンド ラインに出力すると、null と表示されます。Google で調べたところ、awakefromnib の代わりに init を使用するとこの問題が発生する人がいると思いますが、私のプログラムでは、ボタンを押すとこのメソッドがトリガーされます。コードは以下のとおりです。これ以上の情報が必要な場合はお知らせください。ありがとうございます。
#import <Foundation/Foundation.h>
#import "CSSRuleSet.h"
@interface RuleSetViewUpdater : NSObject
@property (weak) IBOutlet NSTextField *top;
-(void)updateFields:(CSSRuleSet *)RuleSet;
@end
.
#import "RuleSetViewUpdater.h"
@implementation RuleSetViewUpdater
@synthesize top = _top;
-(void)updateFields:(CSSRuleSet *)RuleSet
{
[_top setStringValue:[RuleSet getValue:@"top"]];
NSLog(@"%@", _top);
}
@end
xib構造