Core Data は my のサブクラスを自動生成しましたNSManagedObject
。私のエンティティにはisActiveという名前のブール値が含まれています。サブクラスが自動生成される場合、このプロパティのタイプは です。これはブール値なので、次のようなコードを書く必要があります。NSNumber
if ([myEntity.isActive boolValue])
私は非常に奇妙だと思います。これを解決する最善の方法は何ですか?
Core Data は my のサブクラスを自動生成しましたNSManagedObject
。私のエンティティにはisActiveという名前のブール値が含まれています。サブクラスが自動生成される場合、このプロパティのタイプは です。これはブール値なので、次のようなコードを書く必要があります。NSNumber
if ([myEntity.isActive boolValue])
私は非常に奇妙だと思います。これを解決する最善の方法は何ですか?
解決するものは何もありません。本当に、それは正常であり、期待どおりに機能します。
それが気に入らない場合は、サブクラスを生成するときに「プリミティブ データ型にスカラー プロパティを使用する」とマークされたボックスをオンにします。ブール型のプロパティは として生成されるため、それらBOOL
を呼び出す理由はありませんboolValue
。
また、それを行うときのようになる日付属性についても言及NSTimeInterval
しています。私は同意します、それは迷惑です。ただし、スカラーとオブジェクトのプロパティを組み合わせて一致させることができます。生成ステップにマジックはありません。表示されるコードがすべてです。したがって、スカラー プロパティを使用して生成すると、次のようになります。
@property (nonatomic) NSTimeInterval myDate;
次に、その行を次のように編集します。
@property (nonatomic, retain) NSDate * created;
しかし、あなたのisActive
財産をそのまま残してください。ほら、あるプロパティへのスカラー アクセスと、別のプロパティへのオブジェクト スタイル アクセスです。
「Create NSManagedObject Subclass」オプションを使用してサブクラスを生成するときは、「プリミティブ データ型にスカラー プロパティを使用する」チェックボックスをオフにする必要があります。