I have a bunch of user defaults which I save and load on applicationWillTerminate/awakeFromNib. See below.
The objects are checkboxes (NSButton), Sliders (NSSlider) and one textfield (NSTextfield).
I´m on OS X. There is no problem on Checkboxes and Sliders.
Unfortunately I have a problem when loading the line with the NSTextfield:
[txtRemark setStringValue :[myDefaults stringForKey:kTxtRemark]];
For some reasons I´m getting a SIBART and I can´t figure out why :( No error when disabling this line.
My app throws an exception but I don´t know how to figure out what´s wrong.
A screenshot of the exception all the way down.
Thanks for help.
The keys are defines like this:
save myDefaults on applicationWillTerminate like this
NSUserDefaults *myDefaults = [NSUserDefaults standardUserDefaults];
[myDefaults setObject :[isAppointment state] forKey:kIsAppointment];
[myDefaults setObject :[boxForEver state] forKey:kBoxForEver];
[myDefaults setObject :[boxMakeSound state] forKey:kBoxMakeSound];
[myDefaults setObject :[tickTackFlag state] forKey:kTickTackFlag];
[myDefaults setObject :[slideHour intValue] forKey:kSlideHour];
[myDefaults setObject :[slideMin intValue] forKey:kSlideMin];
[myDefaults setObject :[slideSec intValue] forKey:kSlideSec];
[myDefaults setObject :[startAuto state] forKey:kStartAuto];
[myDefaults setObject :[txtRemark stringValue] forKey:kTxtRemark];
[myDefaults setObject :[volumeAdjust intValue] forKey:kVolumeAdjust];
load myDefaults on awakeFromNib like this
NSUserDefaults *myDefaults = [NSUserDefaults standardUserDefaults];
[isAppointment setState :[myDefaults stringForKey:kIsAppointment]];
[boxForEver setState :[myDefaults stringForKey:kBoxForEver]];
[boxMakeSound setState :[myDefaults stringForKey:kBoxMakeSound]];
[tickTackFlag setState :[myDefaults stringForKey:kTickTackFlag]];
[slideHour setIntValue :[myDefaults stringForKey:kSlideHour]];
[slideMin setIntValue :[myDefaults stringForKey:kSlideMin]];
[slideSec setIntValue :[myDefaults stringForKey:kSlideSec]];
[startAuto setState :[myDefaults stringForKey:kStartAuto]];
[txtRemark setStringValue :[myDefaults stringForKey:kTxtRemark]];
[volumeAdjust setIntValue :[myDefaults stringForKey:kVolumeAdjust]];