У меня есть в значение, установленное до 10. Затем запустить NSTimer с этим кодом: [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(updateTimer) userInfo:nil repeats:YES];
Моя пустота выглядеть как этотInt не удается выполнить математику?
-(void)updateTimer {
timeLeft = timeLeft -0.01;
NSString *string = [NSString stringWithFormat:@"%i",timeLeft];
[timer setString:string];
NSLog(string);
}
Я использую Coco2D, это не проблема В моей журнал он выходит как этот
2012-06-05 17:28:56.030 NumberPop[31291:10a03] 9
2012-06-05 17:28:57.030 NumberPop[31291:10a03] 8
2012-06-05 17:28:58.030 NumberPop[31291:10a03] 7
2012-06-05 17:28:59.030 NumberPop[31291:10a03] 6
2012-06-05 17:29:00.030 NumberPop[31291:10a03] 5
2012-06-05 17:29:01.030 NumberPop[31291:10a03] 4
2012-06-05 17:29:02.030 NumberPop[31291:10a03] 3
2012-06-05 17:29:03.030 NumberPop[31291:10a03] 2
2012-06-05 17:29:04.029 NumberPop[31291:10a03] 1
2012-06-05 17:29:05.029 NumberPop[31291:10a03] 0
2012-06-05 17:29:06.029 NumberPop[31291:10a03] 0
2012-06-05 17:29:07.029 NumberPop[31291:10a03] 0
2012-06-05 17:29:08.030 NumberPop[31291:10a03] 0
2012-06-05 17:29:09.029 NumberPop[31291:10a03] 0
2012-06-05 17:29:10.030 NumberPop[31291:10a03] 0
2012-06-05 17:29:11.029 NumberPop[31291:10a03] 0
2012-06-05 17:29:12.029 NumberPop[31291:10a03] 0
0 продолжать идти на навсегда. Я так потерян, любая помощь?
Я не вижу никаких условий для остановки. Если вы рассчитываете на то, что вычитание останавливается ровно на ноль, я бы сказал, что вы не понимаете, как работают числа с плавающей запятой. Вы не можете представить 0,1 точно как двоичный код больше, чем вы можете представлять 1/3 точно как десятичное. – duffymo