iOS 中的计时器不工作
我的应用程序中有一个用于重复计时器的代码:(
在 viewDidAppear 内)
NSDate *date = [NSDate dateWithTimeIntervalSinceNow: 3];
NSTimer *restrictionTimer = [[NSTimer alloc] initWithFireDate: date
interval: 3
target: self
selector:@selector(changeRestriction)
userInfo:nil repeats:YES];
但是
- (void) changeRestriction
{
NSLog(@"inside !!");
}
,我没有看到任何输出,有任何帮助吗?
I have this code for a repeated timer in my app:
(inside viewDidAppear)
NSDate *date = [NSDate dateWithTimeIntervalSinceNow: 3];
NSTimer *restrictionTimer = [[NSTimer alloc] initWithFireDate: date
interval: 3
target: self
selector:@selector(changeRestriction)
userInfo:nil repeats:YES];
and
- (void) changeRestriction
{
NSLog(@"inside !!");
}
However, I dont see any output, any help ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您使用
-initWithFireDate:..
您必须手动将计时器添加到 NSRunLoop。但是,您可以只使用+scheduledTimerWithTimeInterval:..
它会自动触发。If you're using
-initWithFireDate:..
you have to manually add the timer to the NSRunLoop. However you could just use+scheduledTimerWithTimeInterval:..
and it will automatically trigger.