gpt4 book ai didi

ios - 如何在关闭 ViewController 后继续倒计时

转载 作者:行者123 更新时间:2023-11-28 21:43:26 25 4
gpt4 key购买 nike

我使用 UIDatePicker 实现倒数计时器。加载 View 后 datePickerMode 设置 CountDownTimer:

- (void)viewDidLoad {
[super viewDidLoad];
self.countDownTimer.datePickerMode=UIDatePickerModeCountDownTimer;
}

首先在UIDatePicker中设置倒计时时间,然后按下按钮开始倒计时:

- (IBAction)StartCountdown:(id)sender {
[sender setTitle:@"Cancel" forState:UIControlStateNormal];
countDownInterval = (NSTimeInterval)countDownTimer.countDownDuration;
remainder = countDownInterval;
afterRemainder = countDownInterval - remainder % 60 ;
//call updateCountDown()
timer=[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(updateCountDown) userInfo:nil repeats:YES];
}

调用updateCountDown():

-(void)updateCountDown{
afterRemainder --;
int hours = (int)(afterRemainder/(60*60));
int mins = (int)(((int)afterRemainder/60)-(hours * 60));
int secs = (int)(((int)afterRemainder - (60 * mins) - (60 * hours *60)));
NSString *displayText = [[NSString alloc]initWithFormat:@"%02u : %02u : %02u",hours,mins,secs];
self.displayLabel.text = displayText;
}

Action可以正常执行,但是当我跳出这个view时并不会执行timer为0,如何操作跳转view后timer才能持续?

最佳答案

我认为你可以:

  1. 跳出 View 时,让此时的状态保存到NSUserDefaults
    • 剩余时间,可能以秒为单位
    • 当时系统时间,考试时间:13:20:15
  2. 当您再次打开 View 时:
    • 获取当前系统时间,用保存的系统时间 (A) 代替它
    • 使用 (A) 子保存剩余时间(以秒为单位)并继续倒计时。

一点想法,希望对你有帮助

关于ios - 如何在关闭 ViewController 后继续倒计时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31200859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com