i'm creating core data favorite feature. have favorite attribute type boolean in recipe table. there 2 views.
first view user select favorite.
second view display list of favorites selected.
feature works fine when go first view. however, app crashed after go second view , go first view again. following error:
code:
2012-01-09 18:44:09.455 coredata[1354:12503] coredata: error: serious application error. exception caught during core data change processing. bug within observer of nsmanagedobjectcontextobjectsdidchangenotification. can't regex matching on object 0. userinfo (null) 2012-01-09 18:44:09.457 coredata[1354:12503] *** terminating app due uncaught exception 'nsinvalidargumentexception', reason: 'can't regex matching on object 0.'
my code method in first view toggle favorite attribute 1 or 0:
code:
- (ibaction)favoritebuttonpressed:(id)sender { if (recipe.favorite == 0) { [favoritebutton setselected:yes]; favoritebuttonselected = 1; [favoritebuttonimage setimage:[uiimage imagenamed:@"selected.png"] forstate:uicontrolstatenormal]; self.recipe.favorite = [nsnumber numberwithinteger:1]; }else { [favoritebutton setselected:no]; favoritebuttonselected = 0; [favoritebuttonimage setimage:[uiimage imagenamed:@"unselected.png"] forstate:uicontrolstatenormal]; self.recipe.favorite = [nsnumber numberwithinteger:0]; } nsmanagedobjectcontext *context = recipe.managedobjectcontext; nserror *error; if (![context save:&error]) { nslog(@"tried save favorite unresolved error %@, %@", error, [error userinfo]);abort(); } }
problem did not update database? have searched around , found following method, should include code?
code:
[context refreshobject:recipe mergechanges:no];
can please?
thanks!
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