iOS 中的计时器不工作

发布于 2024-11-25 06:27:28 字数 571 浏览 3 评论 0原文

我的应用程序中有一个用于重复计时器的代码:(

在 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

眼眸里的快感 2024-12-02 06:27:28

如果您使用 -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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文