保存UIButton状态NSUserDefaults



UITableViewCell中有一个UIButton。用户触摸此按钮后,我想禁用它。这是我使用的代码:

    class TextCell: UITableViewCell {
    var buttonstate:Bool = true
    [...]

-

      @IBAction func ButtonPressed(sender: AnyObject) {
                self.likesButton.enabled = false
                NSUserDefaults.standardUserDefaults().setObject(false, forKey: "buttonstate")
                NSUserDefaults.standardUserDefaults().synchronize()
}

然后:

     override func awakeFromNib() {
            var buttonstate: [String]? = NSUserDefaults.standardUserDefaults().objectForKey("buttonstate") as? [String]
            if((buttonstate) != nil){
                self.likesButton.enabled = false
            }
            else{
                self.likesButton.enabled = true
            }
}

不幸的是,代码不起作用。(触摸后按钮仍处于启用状态)。谢谢你的帮助,很抱歉我刚开始问这个问题,。。

将如下代码更新到awakeFromNib函数中:

var buttonstate = NSUserDefaults.standardUserDefaults().objectForKey("buttonstate") as Bool
self.likesButton.enabled = buttonstate

希望能有所帮助。

最新更新