在我的程序中,每次使用计时器时,我都希望计时器的长度变小。为此,我在NSTimer中放置了一个变量,该变量在计时器运行后乘以0.9。当"count=count0.9“被注释掉时,程序运行良好的,当然计时器也会变小。当计时器未被注释掉时,定时器在计时器第四次启动后立即触发(或启动) GameOver函数。这很奇怪。
NSTimer*Timer;
int count=3;
-(void)InGame{
Timer = [NSTimer scheduledTimerWithTimeInterval:count target: self selector:@selector(GameOver)userInfo:(nil) repeats:NO];
count=count*.9; }快把我逼疯了,我只是为了这个做了一个堆栈溢出账户。谢谢你的帮助!我希望我知道如何为你攻击我的全部代码。
发布于 2015-08-18 23:57:48
这可能是因为您使用int来存储结果,所以您的十进制值被截断了。
Time 1: 3
Time 2: 3 * .9 = 2.7 => int = 2
Time 3: 2 * .9 = 1.8 => int = 1
Time 4: 1 * .9 = 0.9 => int = 0https://stackoverflow.com/questions/32084318
复制相似问题