viewcontroller.hに次のように宣言された変数があります
@property (nonatomic) uint size;
viewcontrooler.mで、ボタンが押されたときにこの変数に値を設定しました。
問題は、ビューを変更して戻ったときに、変数の値が失われることです。
私はそれを解決するために何ができますか?ViewController.mで使用するだけなので、グローバル変数として宣言する必要はありません。
viewcontroller.hに次のように宣言された変数があります
@property (nonatomic) uint size;
viewcontrooler.mで、ボタンが押されたときにこの変数に値を設定しました。
問題は、ビューを変更して戻ったときに、変数の値が失われることです。
私はそれを解決するために何ができますか?ViewController.mで使用するだけなので、グローバル変数として宣言する必要はありません。
私がすることはviewWillDissapear
、値を保存することです
[[NSUserDefaults standardUserDefaults] setObject:[NSString stringWithFormat:@"%i", size] forKey:@"mySize"];
そして、viewWillAppearでこの値を取得するだけです
size = [[[NSUserDefaults standardUserDefaults] objectForKey:@"mySize"] intValue];
次に、アプリから値を削除する場合は、次を使用します。
[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"mySize"];
私が試みることの 1 つは、非アトミックなしでプロパティを宣言することです (そのため、画面間で値が保持される可能性があります!):
@property uint size;