今、deallocメソッドでオブジェクトの状態( @public float
sをsに変換)を保存すると、NSString
+(void)savePreferences:(NSString*)key :(NSString*)value{
NSMutableString* mutableString=[[NSMutableString alloc]initWithString:value];
CFPreferencesSetAppValue((CFStringRef)key, mutableString, kCFPreferencesCurrentApplication); // Set up the preference.
CFPreferencesAppSynchronize(kCFPreferencesCurrentApplication);// Write out the preference data.
[mutableString release];
}
間違った値が保存されます!?代わりに、リリースする直前に値を保存すると、正しい値が保存されます。最後[super dealloc];
に注意深く電話することに注意してください。どうしてこれなの?