gpt4 book ai didi

objective-c - 如何停止 NSTimer 在此计时器回调方法中单击按钮时启动

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:52:21 25 4
gpt4 key购买 nike

我在停止单击按钮时启动的 NSTimer 时遇到问题。 [timer invalidate]timer = nil; 在我试图停止它时什么都不做 viewWillDisappear 也不在方法调用的方法中被这个定时器调用。但是,当我在 viewWillAppear 中启动计时器并在 viewWillDisappear 中使其无效时,一切都很好。

我想在我启动计时器的线程中可能存在问题。你能帮忙吗?

我查看了这里关于 NSTimer 不停止的所有答案,但它们并没有帮助解决问题。

我初始化计时器的方式:

timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(oneSecondPassedSinceRoundStarted) userInfo:nil repeats:YES];  

我试图阻止它的方法:

[self.timer invalidate];
[timer invalidate];

最佳答案

有趣的是,在您寻求帮助后,您能如此迅速地回答自己的问题。不管你之前苦苦寻找了多久的答案:

[self performSelectorOnMainThread:@selector(stopTimer) withObject:nil waitUntilDone:YES];

选择器:

- (void) stopTimer
{
[timer invalidate];
timer = nil;
}

关于objective-c - 如何停止 NSTimer 在此计时器回调方法中单击按钮时启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11598816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com