2014-09-10 35 views
1

我試圖尋找一種方式很長一段時間,我無法找到一個我能理解:(在覈心數據保存自定義類斯威夫特

我有我做了一個自定義類:

public class Player { 
private var name : String = "Test" 
private var level : Int = 1 
private var skill : Skill = Skill("Basic") //Skill is another class 
} 

我在我的視圖控制器創建從這個類的對象:

var player = Player() 

現在我wan't保存該球員,所以我創建了一個叫做實體保存,並呼籲playerSaved屬性和可變形的類型。

當我將玩家保存到playerSaved時,我得到一個崩潰「發送給實例的無法識別的選擇器」。

謝謝你的幫助:)希望完成這個並完成我的應用程序!

回答

-3

您需要將您的自定義類成NSManagedObject

import CoreData 

@objc(Player) 
class Player { 
    @NSManaged var name: String 
    @NSManaged var level: NSNumber 
    @NSManaged var skill: Skill 
} 

這是保存在覈心數據「自定義」類的標準方式。

+0

技能將無法保存。因爲它不是基本的Obj-C類型。如何解決這個問題? – Aaron 2016-04-23 15:18:15

+0

NSManagedObject從NSObject繼承而來,所以它**是一個「基本的Objective-C類型」。 – Mundi 2016-04-23 22:41:49