gpt4 book ai didi

iphone - NSTimer 和 CADisplayLink 冲突

转载 作者:行者123 更新时间:2023-12-03 20:52:09 25 4
gpt4 key购买 nike

我有一个 CADisplayLink 作为游戏的主游戏循环,还有一个每十秒生成一次敌人的 NSTimer。我用...

    -(void)togglePause{
displayLink.paused = !displayLink.paused;
if (displayLink.paused) {
[self.view addSubview:pauseOverlay];
}else {
[pauseOverlay removeFromSuperview];
}

...暂停游戏循环,但即使游戏暂停后,生成敌人的计时器也会继续继续,如果我销毁计时器然后再制作另一个计时器,则无法仅利用暂停按钮并点击它在 10 秒前消失导致敌人永远不会生成?有一个简单的解决方案吗?

最佳答案

放弃 NSTimer,只使用每次 CADisplayLink 触发时递增的计数器。一旦达到n,就会生成你的敌人并将计数器归零。如果用户暂停,当他们恢复时,计数器将与原来相同。

关于iphone - NSTimer 和 CADisplayLink 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11277286/

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