有没有办法检查是否已在setter中设置了NSManagedObject属性,例如浮点NSNumber,其默认值为0?
我试过这样的事情:
-(void)setQuantity:(NSNumber *)quantity {
if (self.quantity==nil)
NSLog(@"Property never been set");
else
NSLog(@"Property already set");
[self willChangeValueForKey:@"quantity"];
[self setPrimitiveQuantity: quantity];
[self didChangeValueForKey:@"quantita"];
}
但“数量”永远不会为零,因为使用默认值初始化。谢谢!
答案 0 :(得分:1)
如果属性具有默认值,则在初始化期间已设置 。您有两个选择:
-1
。 警告1:确保代码中的某个属性再次设置为nil
警告2:确保在您的代码中没有将属性设置为唯一值。