保存更新的Core Data实例
在我的iOS应用程序,我有一个表视图显示来自核心数据实体的实例。 select一行后,应用程序会从实例属性值中打开一个视图详细信息,如果需要,用户可以更改它们。 从表视图控制器我使用didSelectRowAtIndexPath
方法传递一个NSManagedObject
:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { EditToDoViewController *detailViewController = [[EditToDoViewController alloc] initWithNibName:@"EditToDoViewController" bundle:nil]; NSManagedObject *selectedObject = [[self fetchedResultsController] objectAtIndexPath:indexPath]; detailViewController.selectedObject = selectedObject; //[self.navigationController pushViewController:detailViewController animated:YES]; [self presentViewController:detailViewController animated:YES completion:nil]; }
然后,在EditToDoViewController
,我使用文本字段显示实例值,如下所示:
ToDoTextField.text = [[selectedObject valueForKey:@"thingName"]description];
但我不知道现在如何实现一个保存方法来存储更新的ToDoTextField.text
在AddToDoViewController
实现文件中,我正在使用保存button操作方法内的下面的代码,但我想要插入一个新的对象,我想要更新它。
AppDelegate* appDelegate = [AppDelegate sharedAppDelegate]; NSManagedObjectContext* context = appDelegate.managedObjectContext; NSManagedObject *favoriteThing = [NSEntityDescription insertNewObjectForEntityForName:@"FavoriteThing" inManagedObjectContext:context]; NSString *todoText = ToDoTextField.text; [favoriteThing setValue:todoText forKey:@"thingName"]; NSError *error; if(![context save:&error]) { NSLog(@"Whoopw,couldn't save:%@", [error localizedDescription]); }
AddToDoViewController
不一定需要更新托pipe对象。 由于EditToDoViewController
传递了托pipe对象,因此可以在用户完成编辑时更新托pipe对象。
// EditToDoViewController implementation - (IBAction)SaveButtonAction:(id)sender { AppDelegate* appDelegate = [AppDelegate sharedAppDelegate]; NSManagedObjectContext* context = appDelegate.managedObjectContext; [selectedObject setValue:ToDoTextField.text forKey:@"thingName"]; NSError *error; if(! [context save:&error]) { NSLog(@"Whoopw,couldn't save:%@", [error localizedDescription]); } }
- 无法识别的select器发送到实例与Coredata Swift
- 如何在右侧队列上初始化ManagedObjectContext?
- NSPredicate时间间隔
- 使用“to many”关系从NSFetchedResultsController派生UITableView节
- 使用NSSortDescriptor将“nil”值保留在列表的底部
- 使用内部对象的实例variables的值对自定义对象的数组进行sorting
- 我应该使用REST API后端使用核心数据吗?
- CoreData:无法加载实体的类
- 对于在主线程的appDelegate managedObjectContext中创build的对象,“核心数据无法完成错误”