Objective c tableview中的数据NSNumber无效

Objective c tableview中的数据NSNumber无效,objective-c,xcode,core-data,data-binding,tableview,Objective C,Xcode,Core Data,Data Binding,Tableview,我无法通过绑定的tableview和arrayController将数值保存到coredata。我已更改代码以返回硬编码值,尝试编辑数字列时不会崩溃,但不会保留硬编码值: #import "StringToNumberTransformer.h" @implementation StringToNumberTransformer + (Class)transformedValueClass { return [NSNumber class]; } + (BOOL)allowsReverse

我无法通过绑定的tableview和arrayController将数值保存到coredata。我已更改代码以返回硬编码值,尝试编辑数字列时不会崩溃,但不会保留硬编码值:

#import "StringToNumberTransformer.h"

@implementation StringToNumberTransformer

+ (Class)transformedValueClass { return [NSNumber class]; }

+ (BOOL)allowsReverseTransformation { return YES; }

 - (id)transformedValue:(id)value {

   // return (value == nil) ? nil : [NSString stringWithFormat:@"%i", [value shortValue ]];
   //return (value == nil) ? nil : NSStringFromClass([value class]);
     return @"1";
}

- (id)reverseTransformedValue:(id)value {
//    return [value numberFromString:[value stringValue]];
    return [NSNumber numberWithInt:2];
}
    @end
这是指向xib设置的链接! 有人能解释一下吗


非常感谢文档中所述的定制值转换器(

值转换器子类必须实现transformedValueClass 方法。此方法返回 transformedValue:方法返回

因此,
transformedValueClass
返回
NSNumber
的类,但是
transformedValue:
方法返回类型为
NSString


由于您正在从一个
NSString
转换为一个
NSNumber
,我想您应该交换
transformedValue:
reverseTransformedValue:
方法的实现。

谢谢,核心数据值是一个NSNumber,所以我认为转换后的值正确地将数字转换为字符串,对吗?我将transformedValueClass更改为NSString。当我在调试模式下运行它时,transformValue方法在检索记录时肯定会运行,因此需要从数字转换为字符串。我不明白为什么它不保存值。您可以截图或显示代码片段以供您使用/配置值转换器吗?当然可以,编辑了文章,但无法显示,这是url