我遇到了 NSValueTransformer 的问题,而不是转换值(NSString),而是将 NULL 放入属性可转换的数据库中。我正在使用苹果的例子,这和其他人的例子一样,我只是不能让它在一个简单的层面上工作。我还在transformValue 和reverseTransformedValue 处设置了断点,但它们永远不会被击中。
我的自定义课程
+ (void)registerValueTransformer {
[NSValueTransformer setValueTransformer:[[[self alloc] init] autorelease] forName:@"myTransformerTest"];
}
#pragma mark -
#pragma mark NSValueTransformer implementation
+ (BOOL)allowsReverseTransformation {
return YES;
}
+ (Class)transformedValueClass {
return [NSString class];
}
- (id)transformedValue:(id)value {
return @"Test in";
}
- (id)reverseTransformedValue:(id)value {
return @"Test Out";
}
这在我的应用程序委托中
+(void) initialize
{
[super initialize];
[transformerTest registerValueTransformer];
}
然后在核心数据中,我使用名称“myTransformerTest”使我的属性可转换。根据苹果文档,应该是这样。