计时器Timer
2016-04-02 17:34
351 查看
最近在github看到30DaysofSwift这个项目,感觉想法很好,于是自己也跟着把上面的项目做了一下,也算是对自己近期来的学习的一个锻炼,这是第一个项目:计时器
主要实现了一个可以开始计数、暂停和重置功能的计时页面。原po主写的代码说是在swift2.1环境下写的,可是经我测验还是有问题,我写的代码在这里
运行截图如下:
这里说一下NSTimer的用法:
NSTimer(timeInterval: 0.01, target: self, selector: Selector(“changeLblText”), userInfo: nil, repeats: true)的timeInterval参数是指selector的执行间隔,单位是秒,实例化的timer是用来每隔timeInterval执行target中的selector方法,并且是重复执行,当然,如果只实例化是不能执行的,timer的firing方法只能执行一次,所以将timer放到NSRunLoop.mainRunLoop().addTimer(timer, forMode: NSDefaultRunLoopMode)中,这样就可以让NSRunLoop来执行它。timer的invalidate方法用来停止执行其任务。
主要实现了一个可以开始计数、暂停和重置功能的计时页面。原po主写的代码说是在swift2.1环境下写的,可是经我测验还是有问题,我写的代码在这里
运行截图如下:
这里说一下NSTimer的用法:
import UIKit import Foundation class ViewController: UIViewController { @IBOutlet weak var lblSecond: UILabel! var currentSecond = 0.0 var timer = NSTimer() @IBAction func btnReset() { timer.invalidate() currentSecond = 0 lblSecond.text! = "0" } @IBAction func btnStart() { timer = NSTimer(timeInterval: 0.01, target: self, selector: Selector("changeLblText"), userInfo: nil, repeats: true) NSRunLoop.mainRunLoop().addTimer(timer, forMode: NSDefaultRunLoopMode) } @IBAction func btnStop() { timer.invalidate() } func changeLblText(){ currentSecond += 0.01 lblSecond.text! = String(format: "%.2f", arguments: [currentSecond]) } }
NSTimer(timeInterval: 0.01, target: self, selector: Selector(“changeLblText”), userInfo: nil, repeats: true)的timeInterval参数是指selector的执行间隔,单位是秒,实例化的timer是用来每隔timeInterval执行target中的selector方法,并且是重复执行,当然,如果只实例化是不能执行的,timer的firing方法只能执行一次,所以将timer放到NSRunLoop.mainRunLoop().addTimer(timer, forMode: NSDefaultRunLoopMode)中,这样就可以让NSRunLoop来执行它。timer的invalidate方法用来停止执行其任务。
相关文章推荐
- 查看github pages文档的方式
- 使用BAE的基于Web.py的简单博客程序
- Apple Swift学习教程
- 介绍 Fedora 上的 Swift
- 两分钟学会如何在github托管代码
- Swift中实现点击、双击、捏、旋转、拖动、划动、长按手势的类和方法介绍
- Swift编程中的泛型解析
- Swift中定义二维数组的方法及遍历方法示例
- Android自定义View实现仿GitHub的提交活跃表格
- 简单分析Swift语言的一些基本特征
- Swift与C语言指针结合使用实例
- Swift心得笔记之控制流
- 用Swift构建一个简单的iOS邮件应用的方法
- 苹果公司推出的新编程语言Swift简介和入门教程
- github配置使用指南
- github版本库使用详细图文教程(命令行及图形界面版)
- python使用心得之获得github代码库列表
- 探讨Swift数组和字典