у меня есть целочисленные данные, хранящиеся в NSUserDefaults, там мой код:
- (IBAction)addButton:(id)sender {
NSInteger oldValue = [[NSUserDefaults standardUserDefaults] integerForKey:@"myValue"];
NSString *string1=[addTextField text];
int add = [string1 floatValue];
int new = globalCalories;
int old=oldValue;
if(recomended.text==[NSString stringWithFormat:@"%i", oldValue]){
**self.day = (int)roundf(old-add);
dayLeft.text=[NSString stringWithFormat:@"%d", oldValue-add];
}**
else
{
self.day=(int)roundf(new-add);
dayLeft.text=[NSString stringWithFormat:@"%d", day];
}
}
Я скопировал весь код действия кнопки, на всякий случай, но пометил жирными строками кода, которые, похоже, не работают. Таким образом, он предполагает выполнять математические операции с сохраненными данными (oldValue), но когда я запускаю программы, на самом деле это не так, но вместо действительного значения программа «думает», что oldValue равно 0 (вместо действительного значения).
Итак, когда он содержит, например, число 2000, и я запускаю программу и вхожу в текстовое поле 500, предполагается, что это 1500 (2000-500), но оно показывает -500.