2016-11-02 5 views
0

クラス内のコアデータのエンティティ名を参照するには、以前は "エディタ"> "NSManagedObjectサブクラスの作成"が必要でした。しかし、私はこれらの自動サブクラスを作成した後いくつかのエラーが出ます。 NSManagedObjectをSwift 3でサブクラス化する必要はありませんか?

私のプロジェクトでは、これらのサブクラスファイルには、スウィフト3はもう実体を参照するためにサブクラス化を必要としない、せずに細かいを実行しますか?

答えて

1

Swift 3では、NSManagedObjectのサブクラスを手動で作成する必要はありません。

デフォルトでは、自動的に作成されます。しかし手動でファイルを作成する場合は、testCD.xcdatamodeldのユーティリティ領域でCodegenManual/Noneに設定してください。 AppleのWhat's new in Core Dataから

Xcodeの自動サブクラス生成

Xcodeは今モデリングツールでNSManagedObjectのサブクラスの自動生成をサポートしています。エンティティインスペクタ:

  • 手動/なしが既定の動作です。この場合、 は独自のサブクラスを実装するか、NSManagedObjectを使用する必要があります。
  • カテゴリ/エクステンションは、 ClassName + CoreDataGeneratedPropertiesという名前のファイルにクラス拡張を生成します。 をメインクラス(Obj-Cの場合は、拡張子がClassName.hという をインポートできるヘッダー経由で宣言/実装する必要があります)。
  • クラス定義は、ClassName + CoreDataClassのようなサブクラスファイルと、カテゴリ/エクステンション用に生成されたファイルを生成します。

生成されたファイルはDerivedDataに配置され、モデルの保存後に最初のビルドで再構築されます。それらはXcodeによっても索引付けされているので、参照をコマンドでクリックしてファイル名で高速に開くことができます。

関連する問題