「その他のソース」フォルダーに含まれる 2 つのカスタム値トランスフォーマーがあり、IB のテーブル列にバインドされているため、次のように初期化します。
@implementation MyDocument
- (id)init
{
self = [super init];
if (self != nil) {
// initialization code
[self initialiseValueTransformers];
}
return self;
}
- (void) initialiseValueTransformers {
MyFirstTransformer *myFirstTransformer = [[[MyFirstTransformer alloc] init] autorelease];
[NSValueTransformer setValueTransformer:myFirstTransformer forName:@"MyFirstTransformer"];
MySecondTransformer *mySecondTransformer = [[[MySecondTransformer alloc] init] autorelease];
[NSValueTransformer setValueTransformer:mySecondTransformer forName:@"MySecondTransformer"];
}
そして、これらは IB で、配列されたオブジェクト、モデル キー パス、値トランスフォーマーにバインドされた列を使用して正常に動作します。
私の質問は、 3 番目のトランスフォーマーを作成したばかりですが、それを初期化していないということです。ファイル MyThirdTransformer.h / .m. そして、それはまだIBで動作します..??
これはなぜですか? 最初の 2 つを初期化する必要がありますか?