30天学习Swift项目实战第一天--------计时器

前端之家收集整理的这篇文章主要介绍了30天学习Swift项目实战第一天--------计时器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

只要就是实现一个Github上面的一个开源项目实战。

直接上代码

//

// ViewController.swift

// TimerClock

//

// Created by luopan on 16/8/2.

// Copyright © 2016年 Hust University. All rights reserved.

//

// 使用NSLog打印测试

/*

NSTimer:作为计时器存在。

初始化方法有5种

Timer.invalidate() 表示把计时器从循环池中移除,释放内存。

*/

import UIKit

class ViewController: UIViewController {

//使用control+左键实例化

@IBOutlet weak var resetBtn: UIButton!

@IBOutlet weak var startBtn: UIButton!

@IBOutlet weak var parseBtn: UIButton!

@IBOutlet weak var showLabel: UILabel!

//计时器

var Timer = NSTimer()

//计时数据

var Conuter = 0.0

//是否正在计时

var IsPlaying = false

override func viewDidLoad() {

super.viewDidLoad()

showLabel.text = String(Conuter)

}

@IBAction func resetState(sender: UIButton) {

NSLog("reset")

Timer.invalidate()

IsPlaying = false

Conuter = 0.0

showLabel.text = String(Conuter)

startBtn.enabled = true

parseBtn.enabled = true

}

@IBAction func startTimer(sender: UIButton) {

NSLog("start")

if IsPlaying {

return

}

startBtn.enabled = false

parseBtn.enabled = true

Timer = NSTimer.scheduledTimerWithTimeInterval(0.1,target: self,selector: #selector(ViewController.updateTimer),userInfo: nil,repeats: true)

Timer.fire()

}

@IBAction func parseTimer(sender: UIButton) {

NSLog("parse")

parseBtn.enabled = false

startBtn.enabled = true

Timer.invalidate()

IsPlaying = false

}

func updateTimer() {

Conuter = Conuter + 0.1

showLabel.text = String(format: "%.1f",Conuter)

}

}

猜你在找的Swift相关文章