2016-09-19 7 views
3

私はCore Dataの新しい "Codegen"機能がプロジェクトの代わりに "Derived Data"にクラスファイルを入れていることを理解しています。これは素晴らしいことです。Xcode 8の既存プロジェクトのコアデータ "Codegen"?

最近では、最近、手動で削除して再生成できる2つのクラスと、それらのオブジェクトのコード/メソッドを含む可能性のある別々のクラスが作成されました。

私は "Codegen"を回してみましたが、私たちのコード用にファイルを作成していないようです。 Core Dataオブジェクトにメソッドを追加するにはどうすればよいでしょうか? - 余分な重複ファイルを除いて、以前と同じように動作させる方法を知っている人はいますか?そうでないと何らかの理由がありますか?

答えて

5

クラスに独自のコードを追加する場合は、CodegenドロップダウンをCategory/Extensionに設定するだけで、派生データにMyClass+CoreDataProperties.hMyClass+CoreDataProperties.mが生成され、MyClassの最後に追加する必要があります。以前のように、hヘッダファイル。

btw;この設定が変更された後に保存されないことがあるため、ちょっとしたことがありますので、別のファイルに移動する前に手動で保存してから保存してください。また、ビルドする前にプロジェクトをクリーンアップするか、ファイルを生成しない可能性があります。

+0

いいえ、私はそれを試して報告します。 –

+1

それで、プロトコル/拡張機能は前と同じように動作しますが、クラスファイル自体はまだそのプロセスでは欠けています。それは変です。それはサブクラスのときには悪くないです。なぜなら、別のサブクラスのコピーやペーストを親からのテンプレートや最悪のケースとしてソートすることができるからです。しかし、ルートクラスに対してはテンプレートはありません。 –

+0

あなたはまだエディタ - > Create NSManagedObject Subclassを使用してクラスファイルを取得することができます – trapper

関連する問題