如果代碼生成被設置爲「類定義」,然後你可以導入實體NSManagedObject
子頭文件。
導入:
#import "Tag+CoreDataClass.h"
那麼你Tag
對象的創建將被識別。
Tag *tag = [NSEntityDescription insertNewObjectForEntityForName:@"Tag" inManagedObjectContext:[self managedObjectContext];
tag.name = @"Tag Name";
注:如果你想看到代表您生成的文件,你可以檢查DerivedData文件夾爲您的項目。您不應該編輯這些文件或將它們導入到您的項目中。
喜歡的東西:
/Users/{Username}/Library/Developer/Xcode/DerivedData/{Your Project Name}/Build/Intermediates/{Your Project Name}.build/Debug-iphonesimulator/{Your Project Name}.build/DerivedSources/CoreDataGenerated/{Your Project Name}/
有跡象表明,提供取決於你的使用情況不同選擇其他代碼生成選項:
- 無/手動:允許你管理自己的
NSManagedObject
子類。使用此選項,您將看到項目中的文件,並且可以修改它們。
- 類別/擴展:允許您擁有不希望核心數據管理的自定義屬性(屬性)。
我張貼關於代碼生成選擇這裏更詳細的解答:https://stackoverflow.com/a/40647786/4748172
如果你在你的項目中打開你的'xcdatamodeld'文件,並選擇你的「標籤」的實體,什麼是所選擇的代碼生成選項?如果它被設置爲「manual/none」,那麼當你構建你的項目時,NSManagedObject的子類將不會被生成。 –
如果它被設置爲「類定義」,那麼當您構建項目時將爲您生成「NSManagedObject」子類,但它們不會顯示在您的項目中。 –
@RyanH。它被設置爲「Class Defintion」。如果它在項目中,我如何訪問它們?我在選項中選擇了全局命名空間,所以我想我可以只說標籤並將它顯示爲一個類。我需要在頭文件中導入一些東西嗎? – SolidSnake4444