ios - Ntimer 实现

标签 ios xcode timer nstimer

我搜索了所有主题,但没有一个答案是我真正清楚的。所以,我想创建一个 nstimer,它将在几分钟内从用户那里检索整数,并以秒为单位开始倒计时。如果用户放置 15 个计时器,我希望它以 14:59、14:58 的格式开始计时。我执行以下代码几秒钟。我的意思是用户以秒为单位给出一个整数并启动计数器。

setTime -= 1;
minutes = setTime /60;
seconds = setTime - (minutes *60);
NSString * timeroutput = [NSString stringWithFormat:@"%2d:%.2d", minutes, seconds];

所以我尝试了以下代码,但我无法在几秒钟内倒计时。有什么建议吗?

minutes = setTime;
seconds = (setTime * 60) % 60;
NSString * timeroutput = [NSString stringWithFormat:@"%2d:%.2d", minutes, seconds];

我的计时器设置有以下代码:

-(void)setTimer{
Timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timerRun) userInfo:nil repeats:YES];
}

在 (timerRun) 方法中我实现了时间。

最佳答案

NSInteger seconds;
NSInteger userMinutes;
NSTimer *myTimer;

-(void)setTimer
{
    seconds = userMinutes*60;
    myTimer = [NSTimer scheduledTimerWithTimeInterval:1.0
                                             target:self
                                           selector:@selector(timerRun)
                                           userInfo:nil
                                            repeats:YES];
}

-(void)timerRun
{
    if (seconds-- > 0)
        NSString *timerOutput = [NSString stringWithFormat:@"%02ld:%02ld", seconds/60, seconds%60];
    else
        [myTimer invalidate];
}

关于ios - Ntimer 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25098720/

相关文章:

ios - Xcode Firebase 崩溃报告权限被拒绝

ios - 尝试调用请求的方法 validateAssets 时出错。 (1272)

xcode - 这里有没有人将 Team Explorer Everywhere 与 Xcode 集成?

c# - 使用 Timer 延迟操作几秒钟

javascript - 是否可以在谷歌云功能中放置一个计时器?

ios - 绘制矩形导致错误,无法引用 myview

objective-c - 处理 Objective-C#import 依赖项

ios - 如何正确加载来自 Firebase 的信息?

ios - 如何在没有 MFMessageComposeViewController 的情况下发送和接收短信?

vb.net - vb.net计时器和异常(尝试…捕获)和内存泄漏