如何用 Objective-C 编写计时器?
我正在尝试用 NSTimer 制作秒表。
我给出了以下代码:
nst_Timer = [NSTimer scheduledTimerWithTimeInterval:0.001 target:self selector:@selector(showTime) userInfo:nil repeats:NO];
它在毫秒内不起作用。需要1毫秒多。
I am trying to make a stop watch with NSTimer.
I gave the following code:
nst_Timer = [NSTimer scheduledTimerWithTimeInterval:0.001 target:self selector:@selector(showTime) userInfo:nil repeats:NO];
and it is not working in milliseconds. It takes more than 1 millisecond.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不要以这种方式使用
NSTimer
。 NSTimer 通常用于在某个时间间隔触发选择器。它的精度不高,不适合您想要做的事情。您想要的是一个高分辨率计时器类(使用
NSDate
):输出:
主要:
编辑:添加了
-timeElapsedInMilliseconds
和-timeElapsedInMinutes
的方法Timer.h:
Timer.m
Don't use
NSTimer
that way. NSTimer is normally used to fire a selector at some time interval. It isn't high precision and isn't suited to what you want to do.What you want is a High resolution timer class (using
NSDate
):Output:
Main:
Edit: Added methods for
-timeElapsedInMilliseconds
and-timeElapsedInMinutes
Timer.h:
Timer.m