ビューが再び開く/離れるたびに自動的にリセットされる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はグローバル整数変数です。ビューの読み込み時にNSLogは0の出力を返します。その後、DayAdderを何度でもクリックできます。また、returnToHomeをクリックすると、theDayが何であるかがわかります。ただし、MainGameDisplayページに戻ると、グローバル変数であっても、Dayはゼロにリセットされますか?
Output:
0
N (number of times you clicked 'theDayAdder' button)
0