Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 简单反射测试游戏应用程序中NSDataStorage存在问题_Xcode_Swift_Xcode6 - Fatal编程技术网

Xcode 简单反射测试游戏应用程序中NSDataStorage存在问题

Xcode 简单反射测试游戏应用程序中NSDataStorage存在问题,xcode,swift,xcode6,Xcode,Swift,Xcode6,我试图在NSUserDataStorage中存储一个数字数组。我做错了什么?谢谢 导入UIKit class ViewController: UIViewController { var arr = [Int]() var timer = NSTimer() var countdowntimer = NSTimer() var count = 0 var countdown = Int(arc4random_uniform(4000) + 1000) var highscore:Int! @

我试图在NSUserDataStorage中存储一个数字数组。我做错了什么?谢谢 导入UIKit

class ViewController: UIViewController {
var arr = [Int]()
var timer = NSTimer()
var countdowntimer = NSTimer()
var count = 0
var countdown = Int(arc4random_uniform(4000) + 1000)
var highscore:Int!


@IBOutlet weak var beginButton: UIButton!





@IBOutlet weak var startButton: UILabel!
@IBOutlet weak var highScoreButton: UILabel!
@IBOutlet weak var timerLabel: UILabel!
@IBOutlet weak var backgroundImage: UIImageView!

func updateTime() {
    countdown = countdown - 1
    if countdown <= 0 {
        startButton.textColor = UIColor.blackColor()
        startButton.text = "Tap Now!"
        countdowntimer.invalidate()
        backgroundImage.image = UIImage(named: "red")
        count = 0
        Timer()
    }
}

func Timer() {
    timer = NSTimer.scheduledTimerWithTimeInterval(0.001, target:self, selector:Selector("reflexTest"), userInfo:nil, repeats: true)

}

func reflexTest() {
    count = count + 1
    timerLabel.text = "\(count) ms"
}




@IBAction func beginTapped(sender: AnyObject) {
    if startButton.text == "Tap when the Color Changes" {
        startButton.text = "You tapped too early!"
        countdowntimer.invalidate()
        countdown = Int(arc4random_uniform(4000) + 1000)
    } else {
    if count == 0 {
    countdowntimer = NSTimer.scheduledTimerWithTimeInterval(0.001, target: self, selector: Selector("updateTime"), userInfo: nil, repeats: true)
    startButton.text = "Tap when the Color Changes"
        countdown = Int(arc4random_uniform(4000) + 1000)
        timerLabel.text = "\(count) ms"
    } else {
        timer.invalidate()
        backgroundImage.image = UIImage(named: "green")
        startButton.text = "Tap to Begin"
        arr.append(count)
        count = 0
        highscore = minElement(arr)
        highScoreButton.text = "Best: \(highscore)"
        self.viewDidLoad()
        }

    }

}





override func viewDidLoad() {
    super.viewDidLoad()
    NSUserDefaults.standardUserDefaults().setObject(arr, forKey: "data")
    arr = NSUserDefaults.standardUserDefaults().objectForKey("data") as! [Int]
    println(arr)
            // Do any additional setup after loading the view, typically from a nib.
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}
类ViewController:UIViewController{
var arr=[Int]()
var timer=NSTimer()
var countdowntimer=NSTimer()
变量计数=0
var倒计时=整数(arc4random_统一(4000)+1000)
var高分:Int!
@IBVAR开始按钮:UIButton!
@IBVAR弱启动按钮:UILabel!
@IBOutlet弱var highScoreButton:UILabel!
@IBVAR时间标签:UILabel!
@IBVAR背景图片:UIImageView!
func updateTime(){
倒计时=倒计时-1

如果倒计时您几乎已经了解了
NSUserDefaults
-只需根据需要读写即可。我总是喜欢将其抽象为具有直观界面的方法(甚至是单独的对象),如
保存
加载

如果您的数据变得更复杂,您可能需要考虑使用
NSKeyedArchiver
NSCoding
将数据写入设备上的文件,以便轻松进行序列化和反序列化

请参阅此,了解更多信息

class ViewController: UIViewController {
    var arr = [Int]()

    let kDefaultsKey = "com.mycompany.myapp.numbers"

    override func viewDidLoad() {
        super.viewDidLoad()
        self.loadDefaults()
    }

    func randomNumner() -> Int {
        return Int(arc4random() % 100)
    }

    @IBAction func buttonTapped(sender: AnyObject) {
        arr.append( randomNumber() )
        self.saveDfeaults()
    }

    func loadDefaults() {
        if let savedArray = NSUserDefaults.standardUserDefaults().objectForKey( kDefaultsKey ) as? [Int] {
            self.arr = savedArray
        }
    }

    func saveDfeaults() {
        NSUserDefaults.standardUserDefaults().setObject( self.arr, forKey: kDefaultsKey )
    }
}

非常感谢!你刚才帮了我很多忙!谢谢你,先生。