2011-02-18 74 views
1

我已經設法實現了一個UISliderCocos2D這實際上令我驚訝。保存UISlider的價值

我一直在尋找所有的NSUserDefaults樣品,但我無法得到任何正確的工作。只是想知道是否有人可以提供幫助。我想我已經保存了正確的值。

- (void) valueChanged:(float) value tag:(int) tag{ 
    if (tag == 1) // music volume 
     [self updateLabel:value]; 
    [CDAudioManager sharedManager].backgroundMusic.volume = value; 

    CCLOG (@"Unknown slider"); 

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; 
    [prefs setFloat:value forKey:@"floatKey"]; 
    [prefs synchronize]; 
} 

這只是重裝,我是那種卡住的默認值,我在我的類的初始化把這個。我甚至不知道是否應該去那裏......

NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; 
if ([userDefaults floatForKey:@"floatKey"]) { 
    [userDefaults setFloat:value forKey:@"floatKey"]; 
} 
+0

有些人在那裏詢問在僅僅幾分鐘的跨度方式更多的問題:) – BoltClock 2011-02-18 10:56:02

+0

哈哈我討厭問問題,但它確實讓我生氣的時候,我不能得到的東西的工作。這只是我第三週與cocos2d合作,即時通訊慢慢學習,但它的噩夢哈哈。 – user618175 2011-02-18 11:02:20

回答

1

在你的初始化,你是設置floatKey值的首選項,而不是得到它的。你可能想是這樣的:

NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; 
float value = [userDefaults floatForKey:@"floatKey"]; //read the value from the defaults 
[CDAudioManager sharedManager].backgroundMusic.volume = value; //use the value