IOS保存标签数据

时间:2016-08-27 19:32:23

标签: ios swift

我知道它被问了太多次,但我尝试了所有的例子,但仍然被卡住了 我不知道我要做什么..即时插入示例代码仍然我得到错误有没有NS的代码是计算游戏的水龙头结束我想保存水龙头。当玩家开始游戏时我想加载最后一个点击值,我也需要帮助清除水龙头..

//Score Counting button
var count : Int = 0
@IBAction func ButtonA(sender: AnyObject) {
//Score counting
    count += 1
    Score.text = String(count) }

//objects
@IBOutlet weak var Score: UILabel! //this is the taps numbers
@IBOutlet weak var ScoreInfo: UITextField!

我是一个乞丐请不要努力:)

2 个答案:

答案 0 :(得分:0)

你能更具体地解决你的问题吗?获得帮助的一部分是提出正确的问题。想到的一些事情:

  1. 您的@IB Outlets和Action是否已正确连接到故事板中的组件?

  2. 当您说“玩家开始游戏”时,这是否意味着您希望数据在每次启动应用时都能保留?如果是这样,那么您将需要使用某种类型的数据库(如CoreData或Realm)来保存数据。如果不是这种情况,那么你应该没问题,因为count将持续存在于ViewController持有的任何内容中。

  3. 您的对象变量名称看起来像是UILAbel和UITextfield类的子类。我推荐你的骆驼案例(即得分,scoreInfo,buttonA)你的变量名。

  4. 也不确定您要使用的是什么文本字段。标签就像你已经做的那样充足。

答案 1 :(得分:0)

好吧我修复我的问题空间感谢想法:)现在我可以保存*分数我可以添加*得分高分我可以加载最新*(***这对我很重要)在游戏中得分无关紧要应用程序关闭或设备重启哦和没有Realm:)

有代码

import UIKit

类ViewController:UIViewController {

@IBOutlet weak var HighscoreLbl: UILabel!
@IBOutlet weak var ScoreLbl: UILabel!

@IBOutlet weak var Reset: UIButton!
@IBOutlet weak var Counter: UIButton!

var Score = 0
var Highscore = 0

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
    let HighscoreDefault = NSUserDefaults.standardUserDefaults()

    if (HighscoreDefault.valueForKey("Highscorekey") != nil){
      Highscore = HighscoreDefault.valueForKey("Highscorekey") as! NSInteger!
        HighscoreLbl.text = NSString(format: "Highscore : %i", Highscore) as String
    }



}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

@IBAction func ResetAction(sender: AnyObject) {

    Score = 0
    ScoreLbl.text = NSString(format: "Score : %i", Score) as String

    HighscoreLbl.text = NSString(format: "Highscore: %i", Highscore) as String


}

@IBAction func CounterAction(sender: AnyObject) {

    //Score Start
    Score += 1
    ScoreLbl.text = NSString(format: "Score : %i", Score) as String
    if (Score > Highscore){
        Highscore = Score
        HighscoreLbl.text = NSString(format: "Highscore: %i", Highscore) as String
    }
    else {
    Score += Highscore
        HighscoreLbl.text = NSString(format: "Highscore: %i", Highscore) as String

    }

    let HighscoreDefault = NSUserDefaults.standardUserDefaults()
    HighscoreDefault.setValue(Highscore, forKey: "Highscorekey")
    HighscoreDefault.synchronize()

    //Score End
}

}