私は実際にplist内にユーザー設定を保存して、どこからでもアクセスできるようにしようとしています。しかし、UISliderの値を配列に保存すると、常にメッセージが表示されます
互換性のないタイプ'id'のパラメーターに'float'を送信します。
アレイは次のようになります。
NSArray *value = [[NSArray alloc] initWithObjects: [theGradeSlider value], [theBackgroundSound isOn], [theButtonSound isOn], nil];
私もMSMutableArrayで試しましたが、これも機能しません。
別の解決策
NSUserDefaultsでそれを知ってみましたが、うまくいきました。
設定を保存するには(viewDidUnloadまたはviewDidDiassappearに挿入する必要があります):
NSUserDefaults *settings = [[NSUserDefaults alloc] initWithUser:@"User"];
[settings setFloat:theGradeSlider.value forKey:@"theGradeSlider"];
[settings setBool:theBackgroundSound.on forKey:@"theBackgroundSound"];
[settings setBool:theButtonSound.on forKey:@"theButtonSound"];
[settings synchronize];
設定をロードするには(viewDidLoadまたはViewDidAppearに挿入する必要があります):
NSUserDefaults *settings = [[NSUserDefaults alloc] initWithUser:@"User"];
theGradeSlider.value = [settings floatForKey:@"theGradeSlider"];
theBackgroundSound.on = [settings boolForKey:@"theBackgroundSound"];
theButtonSound.on = [settings boolForKey:@"theButtonSound"];