如何在realm-cocoa中正确使用RLMBool属性?
How to use RLMBool property correctly in realm-cocoa?
在 RLMObject 的子类中声明了一个 Bool 属性,如下所示:
@interface PhotoRealm : RLMObject
@property NSNumber<RLMBool> *isVoted;
- (id)initWithMantleModel:(PhotoModel *)photoModel;
@end
在 .m 文件中,我实现了 -defaultPropertyValues
来初始化这样的:
+ (NSDictionary *)defaultPropertyValues {
return @{@"isVoted" : @NO};
}
在某个地方,我需要通过打野布尔值来做一些事情,但结果不是预期的。
然后,我编写了以下调试代码:
if (photoRealm.isVoted) {
NSLog(@"isVoted");
} else {
NSLog(@"unVoted");
}
NSLog(@"%ld", (NSInteger)photoRealm.isVoted);
日志如下:
[15:32:43] -[DTCollectionViewCell setupContentWithPhotoModel:] [306 line] isVoted
[15:32:43] -[DTCollectionViewCell setupContentWithPhotoModel:] [311 line] 4646266992
同时,realm文件快照如下:
我被困在这里了。
我想我已经解决了。
实际上,isVoted
是 NSNumber,所以代码应该是这样的:
if ([photo.isVoted integerValue]) {
NSLog(@"isVoted");
} else {
NSLog(@"unVoted");
}
NSLog(@"%ld", [photo.isVoted integerValue]);
您需要将其用作。
if ([photo.isVoted boolValue]) {
NSLog(@"isVoted");
} else {
NSLog(@"unVoted");
}
在 RLMObject 的子类中声明了一个 Bool 属性,如下所示:
@interface PhotoRealm : RLMObject
@property NSNumber<RLMBool> *isVoted;
- (id)initWithMantleModel:(PhotoModel *)photoModel;
@end
在 .m 文件中,我实现了 -defaultPropertyValues
来初始化这样的:
+ (NSDictionary *)defaultPropertyValues {
return @{@"isVoted" : @NO};
}
在某个地方,我需要通过打野布尔值来做一些事情,但结果不是预期的。 然后,我编写了以下调试代码:
if (photoRealm.isVoted) {
NSLog(@"isVoted");
} else {
NSLog(@"unVoted");
}
NSLog(@"%ld", (NSInteger)photoRealm.isVoted);
日志如下:
[15:32:43] -[DTCollectionViewCell setupContentWithPhotoModel:] [306 line] isVoted [15:32:43] -[DTCollectionViewCell setupContentWithPhotoModel:] [311 line] 4646266992
同时,realm文件快照如下:
我被困在这里了。
我想我已经解决了。
实际上,isVoted
是 NSNumber,所以代码应该是这样的:
if ([photo.isVoted integerValue]) {
NSLog(@"isVoted");
} else {
NSLog(@"unVoted");
}
NSLog(@"%ld", [photo.isVoted integerValue]);
您需要将其用作。
if ([photo.isVoted boolValue]) {
NSLog(@"isVoted");
} else {
NSLog(@"unVoted");
}