我有一个 int ,每次视图重新打开/离开时都会自行重置。我已经尝试了所有我能想到的声明 int 的方法,从公共到实例变量再到全局变量,但它似乎仍然重置!
@interface MainGameDisplay : UIViewController
extern int theDay;
@implementation MainGameDisplay
- (void)viewDidLoad {
[super viewDidLoad];
NSLog(@"%i", theDay);
}
- (IBAction)returnToHome:(id)sender {
ViewController *new = [[ViewController alloc] initWithNibName:nil bundle:nil];
[self presentViewController: new animated:YES completion:NULL];
NSLog(@"%i", theDay);
}
- (IBAction)theDayAdder:(id)sender {
theDay++;
}
好的,所以 theDay 是一个全局整数变量。在 View load NSLog 返回输出 0。然后我可以根据需要多次单击 theDayAdder,当我单击 returnToHome 时,它会告诉我 theDay 是什么。然而,当我回到 MainGameDisplay 页面时,theDay 将被重置为零,即使它是一个全局变量?
Output:
0
N (number of times you clicked 'theDayAdder' button)
0