i'm trying learn data persistence book, , i'm using xcode 4.2 practice. i'm confused , i'm hoping out there can me understand.
in ios 5, using xcode 4.2; on iphone storyboard, modal segue deallocate view i'm leaving?
if so, why doesn't nsuserdefaults assign text label in uibuttons on previous view? i'm forcing nsuserdefaults synchronise. uibutton text populate, when exist , re-open application.
code:- (void) savecardiacstring:(nsstring *) mystring { nsuserdefaults *userdefaults = [nsuserdefaults standarduserdefaults]; [[nsuserdefaults standarduserdefaults] setobject:mystring forkey:@"cardiac"]; [userdefaults synchronize]; }code:- (void) saverespiratorystring:(nsstring *) mystring { nsuserdefaults *userdefaults = [nsuserdefaults standarduserdefaults]; [[nsuserdefaults standarduserdefaults] setobject:mystring forkey:@"respiratory"]; [userdefaults synchronize]; }
nslogs show nsuserdefaults assigned.code:- (void)pickerview:(uipickerview *)pickerview didselectrow:(nsinteger)row incomponent:(nsinteger)component { if ([[_currentoptions objectatindex:0] isequaltostring:@"no cardiac failure"]) { [self savecardiacstring:[_currentoptions objectatindex:row]]; } else if ([[_currentoptions objectatindex:0] isequaltostring:@"no dyspnoea"]) { [self saverespiratorystring:[_currentoptions objectatindex:row]]; } nslog(@"cardiac string set %@", [self retrievecardiacstringvalue]); nslog(@"respiratory string set %@", [self retrieverespiratorystringvalue]); }
previous view
code:- (nsstring *) retrievecardiacstringvalue { return [[nsuserdefaults standarduserdefaults] objectforkey:@"cardiac"]; }the following generate*options methods call nsarray generated, passed picker in modal view when button pressed.code:- (nsstring *) retrieverespiratorystringvalue { return [[nsuserdefaults standarduserdefaults] objectforkey:@"respiratory"]; }
code:- (void)viewdidload { _currentcardiacoptions = [cardiac generatecardiacoptions]; _currentrespiratoryoptions = [respiratory generaterespiratoryoptions]; if ([[nsuserdefaults standarduserdefaults] objectforkey:@"cardiac"] == nil) { [_cardiacvaluebtn settitle:@"0" forstate:uicontrolstatenormal]; } else { [_cardiacvaluebtn settitle:[self retrievecardiacstringvalue] forstate:uicontrolstatenormal]; } if ([[nsuserdefaults standarduserdefaults] objectforkey:@"respiratory"] == nil) { [_respriatoryvaluebtn settitle:@"0" forstate:uicontrolstatenormal]; } else { [_respriatoryvaluebtn settitle:[self retrieverespiratorystringvalue] forstate:uicontrolstatenormal]; } [super viewdidload]; }
might suggest starting new project , turn off storyboarding, can concentrate on data persistence topics being taught book? once comfortable them, go , revisit how storyboards affect implementation.
also, courtesy others, when refer book, please provide title, author, , edition, @ minimum.
Forums iPhone, iPad, and iPod Touch iOS Programming
- iPhone
- Mac OS & System Software
- iPad
- Apple Watch
- Notebooks
- iTunes
- Apple ID
- iCloud
- Desktop Computers
- Apple Music
- Professional Applications
- iPod
- iWork
- Apple TV
- iLife
- Wireless
No comments:
Post a Comment