为了账号安全,请及时绑定邮箱和手机立即绑定

如何暂停/播放NSTimer?

如何暂停/播放NSTimer?

iOS
qq_遁去的一_1 2019-11-02 10:45:59
我需要在执行的0:0:0之前启动NSTimer,单击时有一个暂停按钮,如果用户单击播放,计时器必须在一段时间后暂停,它必须从暂停的时间值开始运行。如何在NSTimer中暂停播放?有什么帮助吗?提前致谢。
查看完整描述

3 回答

?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

refreshTimer应该在课堂上。使用以下代码停止计时器:


refreshTimer = [NSTimer scheduledTimerWithTimeInterval: refreshInSeconds

                                                target: self

                                              selector: @selector(refreshPage)

                                              userInfo: nil

                                               repeats: YES];

[refreshTimer invalidate];

refreshTimer = nil;

要开始,您可以再次将计时器安排为第3行


查看完整回答
反对 回复 2019-11-02
?
千万里不及你

TA贡献1784条经验 获得超9个赞

更新了Swift 2的答案


import UIKit


class ViewController: UIViewController {


  var myTimer = NSTimer()

  var time = 0 // global var


  @IBOutlet weak var counterLabel: UILabel!


  @IBAction func pauseTimer(sender: AnyObject) {

    myTimer.invalidate()

  }


  @IBAction func startTimer(sender: AnyObject) {

    myTimer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: Selector("result"), userInfo: nil, repeats: true) 

  }


  func result() {

    time++

    counterLabel.text = String(time)

    print(time) 

  }


  override func viewDidLoad() {

    super.viewDidLoad()

  }


  override func didReceiveMemoryWarning() {

    super.didReceiveMemoryWarning()

  }

}


查看完整回答
反对 回复 2019-11-02
  • 3 回答
  • 0 关注
  • 917 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信