0

iOS 用の最初のフレームワークを作ろうとしています。

その中にコアデータがあり、xcdatamodel2つentitesあり、両方のモデルのクラスを自動生成しましたが、印刷する[[managedObjectModel entities] valueForKey:@"name"]と最初のエンティティしか表示されません。

またinit fetchRequest withEntityName、2 番目のエンティティを取得しようとすると、まったく表示されません。

そして最も奇妙なことは、最初のエンティティではすべてが完全に機能することです。また、最初のエンティティ内で更新を行うと、それを見ることができるので、最新バージョンがあると思います。

4

1 に答える 1

0

私の経験によると、私はすべてのプライベート変数を使用しましたが、外部にアクセスしないframeworkため、そうである可能性があります。

または、frameworkコア データbundleパスを指定してentity、 dynamic を使用した現在のプロジェクトからアクセスできるようにする必要がありますframework

このような :

lazy var managedObjectModel: NSManagedObjectModel = {
    // The managed object model for the application. This property is not optional. It is a fatal error for the application not to be able to find and load its model.
    let carKitBundle = NSBundle(identifier: "YOUR_FRAMEWORK_BUNDLE_PATH")

    let modelURL = carKitBundle!.URLForResource("YOUR_MODEL_NAME", withExtension: "momd")!
    return NSManagedObjectModel(contentsOfURL: modelURL)!
}()

現在のプロジェクトでエンティティを取得するのに役立つかもしれません。

それがあなたの問題を解決するかどうか教えてください。

ありがとう。

于 2016-11-11T13:05:40.997 に答える