2

私はクラスにこう言います。

class GroupClass{
    var groupId: String = ""
    var groupName: String = ""
}

そのオブジェクトを に保存できるようにしたいNSUserDefaults。私はこのようにしてみました、

let group = GroupClass()
let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(group, forKey: "group")
defaults.synchronize()

次の方法で取得し、

let defaults = NSUserDefaults.standardUserDefaults()        
var group = defaults.objectForKey("group") as! GroupClass

例外Using non-property obectをスローしてクラッシュしました。Swiftでそれを行う正しい方法は何ですか?

次の方法も試しましたが、

class GroupClass{
    var groupId: String = ""
    var groupName: String = ""

    required init(coder aDecoder: NSCoder) {
        self.groupId = aDecoder.decodeObjectForKey("groupId") as! String
        self.groupName = aDecoder.decodeObjectForKey("groupName") as! String

    }

    func encodeWithCoder(aCoder: NSCoder) {
        aCoder.encodeObject(self.groupId, forKey: "groupId")
        aCoder.encodeObject(self.groupName, forKey: "groupName")

    } 
}

しかし、let group = GroupClass(coder:NSCoder())問題があります。

4

1 に答える 1