首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nstimer实施

Nstimer实施
EN

Stack Overflow用户
提问于 2014-08-02 19:40:22
回答 1查看 177关注 0票数 0

我搜索了所有的线索,但没有一个答案对我来说很清楚。因此,我想要创建一个nstimer,它将在几分钟内从用户检索整数,并以秒开始倒计时。我希望如果用户放置15计时器开始以这种格式计算14:59,14:58。我在几秒钟内实现以下代码。我的意思是,用户以秒为单位给出一个整数并启动计数器。

代码语言:javascript
复制
setTime -= 1;
minutes = setTime /60;
seconds = setTime - (minutes *60);
NSString * timeroutput = [NSString stringWithFormat:@"%2d:%.2d", minutes, seconds];

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

代码语言:javascript
复制
minutes = setTime;
seconds = (setTime * 60) % 60;
NSString * timeroutput = [NSString stringWithFormat:@"%2d:%.2d", minutes, seconds];

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

代码语言:javascript
复制
-(void)setTimer{
Timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timerRun) userInfo:nil repeats:YES];
}

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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-02 20:11:02

代码语言:javascript
复制
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];
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25098720

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档