こんにちは、私は uislider を使用しており、ラベルの値を取得しています。今、スライダーの値を保存しようとしています。これを行う方法がわかりません。誰かが知っている場合は、コードを共有してください。これは、変更されたスライダーのコードです。
-(IBAction)sliderChanged:(id)sender
{
UISlider *slider = (UISlider *)sender;
if((int)slider.value % 10 == 0)
{
sliderLabel.text = [[NSString alloc] initWithFormat:@"Value of:%d", (int)slider.value];
}
}
質問する
1047 次
2 に答える
2
NSUserDefaultを使用して、スライダーの値を保存できます。
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:sliderLabel.text forKey:@"Slider"];
[defaults synchronize];
次のようなデータを取得できます。
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
NSString *strValue = [defaults objectForKey:@"Slider"];
myLabel.text = strValue != nil ? strValue : @"No Value";
上記のコードは を に保存しsliderLabel
ていNSUserDefault
ます。スライダーの値を float の形式で保存する場合は、次を使用します。
[defaults setObject:[NSNumber numberWithFloat:slider.value] forKey:@"Slider"];
次のように取得します。
NSNumber *strValue = [defaults objectForKey:@"Slider"];
于 2012-11-10T07:44:41.553 に答える
0
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[NSNumber numberWithFloat:slider.value] forKey:@"sliderValue"];
値をfloat(UISlider値の元のタイプ)として保存する必要があると思います。これはよりクリーンであり、次のような画面を再度開いたときに、float値を再利用してスライダーを元に戻すことをお勧めします。
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
[self.slider setValue:[[defaults objectForKey@"sliderValue"] floatValue]];
于 2012-11-10T07:45:44.950 に答える