想知道是否有其他人遇到過這種情況,或者如果有原因,我做錯了什麼。將布爾型屬性保存爲NSNumber對象的CoreData實體
我有一個CoreData的應用程序。在模式中,我有一個'內容'實體,其中'unlocked'屬性被設置爲布爾值。
但是當我保存退出obj的C級爲雖然Xcode的實體,content.h內解鎖顯示爲:
@property (nonatomic, retain) NSNumber * unlocked;
如果我改變它在content.h爲Boolean,我得到一個ARC編譯錯誤。但是,如果我在嘗試獲取NSNumber對象時將其作爲NSNumber對象保留下來,它會不一致地返回(因爲如果我有NSLog打印它,每次運行它都會以不同的值返回)。
我可以找出一個相當明顯的解決辦法,設置解鎖爲NSString爲'是'或'否',並在相關點進行比較,但我想知道是否有人知道爲什麼會發生這種情況,或者如果有辦法將它保留爲布爾值。
在此先感謝。
在Xcode中創建託管對象子類時,您可以選擇*「使用原始數據類型的標量屬性」*,那麼您將獲得'@property(nonatomic)BOOL unlocked;' –