• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

swift学习-计时器

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

swift学习之计时器

这个demo主要学习在swift中如何操作计时器(Timer),按钮(UIButton),文本(Label)

效果图:

代码

import UIKit

class ViewController: UIViewController {

    var btn1:UIButton?
    var timer:Timer?
    var label:UILabel?
    var a = 0.0
    
    override func viewDidLoad() {
        super.viewDidLoad()
        setupUI()
    }
    
    func setupUI() {
        
        let button = UIButton(frame:CGRect(x: 20, y: 400, width:50, height: 50))
        button.backgroundColor = .red
        button.addTarget(self, action: #selector(startCLick(item:)), for: .touchUpInside)
        button.layer.cornerRadius = 25
        button.clipsToBounds = true
        button.setTitle("开始", for: .normal)
        btn1 = button
        view.addSubview(button)
        
        let btn = UIButton(frame:CGRect(x: 300, y: 400, width: 50, height: 50))
        btn.backgroundColor = .blue
        btn.addTarget(self, action: #selector(startCLick(item:)), for: .touchUpInside)
        btn.setTitle("暂停", for: UIControlState.normal)
        view .addSubview(btn)
        
        let lab = UILabel(frame: CGRect(x: 50, y: 50, width: view.frame.size.width - 100, height: 50))
        lab.textAlignment = .center
        lab.font = .systemFont(ofSize: 18)
        lab.backgroundColor = .red
        lab.textColor = .white
        view.addSubview(lab)
        label = lab
        lab.text = "swift stopWatch Demo"
        
    }

    func timerIntervalx() {
        a+=1;
        label?.text = "swift stopWatch Demo \(a)"
    }
    
    func startCLick(item:UIButton) {
        if item.isEqual(btn1) {
            timeStart()
        }
        else
        {
            timePause()
        }
    }
    
    func timeStart() {
        
        if !(timer != nil) {
            timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(timerIntervalx), userInfo: nil, repeats: true)
        }
    }
    
    func timePause() {
        timer?.invalidate()
        timer = nil
    }
    
    
}

基本控件的创建:

UIButton:

let btn = UIButton(frame:CGRect(x: 300, y: 400, width: 50, height: 50))

UILabel:

 let lab = UILabel(frame: CGRect(x: 50, y: 50, width: view.frame.size.width - 100, height: 50))

Timer:

 timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(timerIntervalx), userInfo: nil, repeats: true)

swift中方法名更加简单,枚举类型可以直接使用点语法操作

.touchUpInside  .white .center

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
[Swift]LeetCode770.基本计算器IV|BasicCalculatorIV发布时间:2022-07-13
下一篇:
多媒体应用-swift发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap