作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我使用的是核心数据,所以我所有的数字都是 NSNumbers(因为它是一个旧模型,我没有使用似乎可用于新核心数据的标量自动转换)。
所以我的代码充满了这些转换语句:
[myNSNumberFromCoreDataObject intValue] which is pretty annoying...
是否有任何方便的解决方案,或者我现在被困住了,因为我无法使用标量核心数据建模?
编辑:理想情况下,可以编写某种预处理器语句来检查这些情况并自动地自动替换它 - 这可能以某种方式实现吗?
最佳答案
您始终可以将托管对象的属性声明为标量,并在 getter/setter 中处理转换。示例:
标题
@interface MyEntity : NSManagedObject
@property (nonatomic, assign, readwrite) NSUInteger count;
@end
实现
@interface MyEntity ()
@property (nonatomic, retain, readwrite) NSNumber* dbCount;
@end
@implementation MyEntity
@dynamic dbCount;
- (void)setCount:(NSUInteger)count {
self.dbCount = [NSNumber numberWithUnsignedInteger:count];
}
- (NSUInteger)count {
return [self.dbCount unsignedIntegerValue];
}
@end
关于iphone - 是否有某种方便的解决方案来避免将 NSNumber 显式转换为 int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11632310/
我是一名优秀的程序员,十分优秀!