? ? ? ? CoreData并不是一種新興的技術,但是對于一般剛入門的初級開發者還是有一層神秘面紗存在的。下面簡單介紹一下CoreData使用(從創建使用CoreData的項目開始).
一、如果你準備要在項目中使用CoreData,那么在最初創建項目工程的時候就要勾選Use Core Data(如果你最初創建項目的時候沒有勾選或者項目開始一段時間才想到要用CoreData,這個要怎么做,我會在以后寫出來),如下圖
二、創建好工程,這個時候你會在工程中看到這么一個文件,名叫CoreData.xcdatamodeld,單擊它,如下圖:
三、創建你所需要的實體,給實體添加屬性
點擊上圖中Add Entity,界面自動默認生成一個叫Entity的實體,如下圖
雙擊實體Entity,改成你所需要的實體名字,注意實體名字首字母要大寫,不然會有警告框彈出,告訴你Name must begin with upper case letter,如果不改成首字母大寫是保存不成功的,這一點還是比較靠譜的。我創建一個叫Person的實體,下面為Person添加三個基本屬性:name,age,sex。這個時候還有一點注意的是屬性的名字首字母必須是小寫,不然也會彈出警告框阻止你下一步的操作,告訴你Name must begin with lower case letter。點擊上圖中Attributes下面的加號為Person實體添加屬性,如下圖:
四、創建管理對象文件NSManagedObjectSubclass。這里需要注意:Xcode7和Xcode8是不一樣的。Xcode7的話,步驟是這樣的,右鍵New File...,在下面這個界面中拖動到Core Data 一欄,但是在Xcode8中,你會發現紅框下圖紅框位置的NSManagedObject subclass 不見了,不要驚慌,肯定有替代的方法或者放在了別的位置。
下面就來介紹Xcode8怎么創建NSManagedObject
1、選中CoreData.xcdatamodeld文件,點擊菜單欄上的Editor,你會發現在其下拉菜單里面有一項叫做Create NSManagedObject Subclass...,點擊它 ,出現接下來的界面,
選中CoreData,點擊next.在接下來的界面中選中你要管理的實體,例如demo中我只創建了一個實體Person,如果我創建了多個實體的話,這里列出多個實體供你選擇,選中你要管理的實體,點擊next,然后點擊create。這個時候別開心,編譯工程,你會發現報錯了,如圖:
2、解決錯誤
首先把上一步生成的這四個文件刪除,
在Xcode8.1中,使用Editor中的Create NSManagedObject Subclass...命令的時候,需要先把你要管理的實體的Codegen選中Manual/none,如下圖,
然后再按照1中所說步驟操作一遍,就生成了對應的model管理文件,編譯通過。
具體對實體的操作將在下一篇文章中介紹