我想运行一个计时器来监视我的游戏,以了解游戏过程中发生的一些事件。
我会将计时器包含在确实加载功能中。因此,计时器会永久检查 event1 是否发生。
[NSTimer scheduledTimerWithTimeInterval:0.001
target:self
selector:@selector(check_status_event1:)
userInfo:nil
repeats:YES];
我还尝试设置一个指向 Timer 的指针,以便在需要时使其无效。
- (IBAction)check_status_event1:(id)sender
{
//_stepper_event1_status_check.value (0 = no / 1 = yes)
if (_stepper_event1_status_check.value == 1) {
_stepper_event1_status_check.value = 0; //reset stepper again
[self event1_go:0];
}else{}
}
问题:
0.001的区间可以吗?
对设备性能有很大影响吗?因为有一个永久运行的 if 语句(或更多)。当游戏通过主页按钮发送到后台时,它是否也会使 iPhone 或 iPad 变慢?
我可以同时使用更多这个计时器吗?例如,当我运行 10 或 20 个时。
这是捕捉游戏期间发生的事件的正常方法吗?例如 2 个对象的合并。我还在 1 秒后设置了一些带有计时器的代码(步骤 1)。2 秒后(步骤 2)。3 秒后(第 3 步)....当我使用这样的计时器时,我可以正好在这个时间开始下一步,当前一步完成时。也许一步需要超过 1 秒。而且我不想使用 animateWithDuration 和 Delay。也许 iPad 2 处理和读取整个代码的速度比 iPad 4 慢。当第 1 步尚未完成时,我不想从第 2 步开始。
但是iOS设备的性能如何。这是一个问题吗?
谢谢菲利普