-1

私は単純なカウンターアプリケーションを持っています。つまり、ユーザーがボタンを押して、選択した値だけボタンを増やします。シングルビューアプリケーションでアプリケーションの制作を開始しました。アプリを閉じたときにカウンターの最後の値が保存されるようにする必要があります。次に、アプリが再び開いたときに、カウンターの値を元の場所にロードする必要があります。アプリを開閉するだけで値を保存して再読み込みする必要があります。つまり、ボタンを押す必要はありません。

私のカウンター変数は。というIntcounterです。ビューコントローラは単に。という名前viewController.h/mです。

これらすべてを設定する方法がわかりません。これを行うにはcoreDataが必要だと思います。coreDataを設定するにはどうすればよいですか?viewControllerのデリゲートでコーディングしますか?これが最善の方法ではない場合は、より効果的な方法でそれを行う方法を提供してください。

助けてくれてありがとう、何よりも簡単な説明に感謝します。私はこれの他の例を見てきましたが、私が必要としているものを提供していないようで、理解するのに十分単純なものはありませんでした。このスレッドで答えを提供してください!

ヒュー

4

2 に答える 2

1

コアデータの代わりにNSUserDefaultsを使用するのが最も簡単です。

保存する:

[[NSUserDefaults standardUserDefaults] setInteger:counter forKey:@"counter"]

読むには:

NSInteger counter = [[NSUserDefaults standardUserDefaults] integerForKey:@"counter"];

UIApplicationDelegateを調べて、コードを配置する必要のあるメソッドを見つけます。これは、次のいずれかのメソッドのAppDelegateに含まれている可能性があります。

値をロードする場所:

  • -application:didFinishLaunchingWithOptions:
  • –applicationWillEnterForeground:

値を保存する場所:

  • -applicationDidEnterBackground:
  • –applicationWillTerminate:

正確な場所は、ユーザーが別のアプリに切り替えたときに値を読み込んで保存する必要があるかどうかによって異なります。これは、メモリ不足のためにアプリがフリーズ状態のときにアプリが終了する可能性があるため、ほぼ確実に当てはまります。この場合、アプリがバックグラウンドで実行されたとき(ユーザーが別のアプリに切り替えたとき)に値が保存され、アプリがフォアグラウンドアプリになったとき(ユーザーがアプリに切り替えたとき)に値が復元されたことを確認する必要があります。

于 2013-02-04T18:59:35.383 に答える
0

NSUserDefaultsを使用できます。NSUserDefaults変数を作成する変数を次のように格納できます。

NSUserDefaults * standardUserDefaults = [NSUserDefaults standardUserDefaults];

次に、整数を保存します

[standardUserDefaults setInteger:1 forKey:@"integer"];

そして、すべてを同期します[standardUserDefaults synchronize];

次に、変数を作成する整数を取得します。

NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];

その後、それを回復します

NSInteger myInt = [standardUserDefaults integerForKey:@"integer"];
于 2013-02-04T19:05:34.823 に答える