我在我的應用程序中使用CoreData
,我有一組「卡」實體。玩家可以在他的套牌中擁有多張同一張牌(它仍然是從數據庫中拉出的同一張牌,但是會向陣列添加兩次)。複製NSManagedObject
當我想修改其中一張重複卡片的某個方面時,會發生我的問題。它們都是分類的NSManagedObjects
,它們有一些自定義屬性(不保存到數據庫中)。例如,當我在陣列中的一張卡上設置其中一個自定義屬性時,它也會在陣列中的其他同一張卡上發生更改,因爲entityForName:inManagedObjectContext:
返回相同的對象,並且不會加載新的對象。
基本上我需要的是每次調用entityForName:inManagedObjectContext:
我得到一個同一個實體的新實例,這樣當我修改一個自定義屬性時,它不會在另一箇中修改。如果已經創建了實體,但是它不起作用,我已經嘗試使用[實體複製]。
非常感謝您的幫助!