2

1 つのスライダーとラベルを含むビューがあります。ラベルにカウントダウンを表示し、スライダーを使用してラベルに時間を設定しています。タイマーを開始したので、ラベルの値が毎分減少し、スライダーの値も減少しているとします。アプリを閉じてから再度開くと、タイマーがすでに実行されている必要があります+ラベルの値は時間に応じています+スライダーの値は時間に応じていますか? ここに私がやっていることの画像があります

代替テキスト

4

1 に答える 1

8

何かが足りないかどうかはわかりませんが、NSUserDefaultsにデータを保存するのはとても簡単です。スライダーの値を保存するには:

[[NSUserDefaults standardUserDefaults] setFloat:[mySlider value] forKey:@"sliderValue"];

ラベルの値を保存するには:

[[NSUserDefaults standardUserDefaults] setValue:[myLabel text] forKey:@"textValue"];

それらを取り戻すには、単にそれを逆にします。

[mySlider setValue:[[NSUserDefaults standardUserDefaults] floatForKey:@"sliderValue"]];

個人的には、残り時間の文字列表現は保存せず、フロートだけを保存します。次に、float値を文字列表現に変換するために使用している既存のコードを使用して、タイマーのテキストを復元できます。

于 2009-10-14T11:46:28.057 に答える