Core Dataの同一エンティテイのサブクラスを別名で複数作ると、参照例外が起きてアプリがクラッシュする。
1. プロジェクトでAというエンティテイのサブクラスを作成。
2. 外部ライブラリを取り込み、外部ライブラリにあるBというエンティテイのサブクラスをAとして利用できるようにコードを修正。(サブクラス名はBだが、NSFetchedResultsControllerのNSEntityDescriptionではエンティテイAを指定する。サブクラスBのプロパティをエンティテイAに合わせて修正。)
3. ビルドして実行すると、エンティテイAのプロパティへの値の設定ができず、nilになる。
4. エンティテイAのプロパティを参照しようとすると、参照例外が発生してアプリがクラッシュする。
正しいコードは、外部ライブラリにあるエンティテイ Bのサブクラスは使用せず、エンティテイ Aのサブクラスを使用する。
2014年09月20日
この記事へのコメント
コメントを書く
この記事へのトラックバック

