Ios NSMutableArray PrepareForsgue
我在一个应用程序中遇到了一个小问题,我进行的调试在Ios NSMutableArray PrepareForsgue,ios,objective-c,core-data,Ios,Objective C,Core Data,我在一个应用程序中遇到了一个小问题,我进行的调试在prepareForSegue中肯定存在冲突:让我解释一下 我有一个UITableView,其中包含我编写的数据数组。 然后我有另一个数组,其中包含用户必须编辑和保存的xcdatamodel数据 如果我在调用手机时使用此屏幕prepareForSegueme,手机会崩溃 -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { if ([[segue iden
prepareForSegue
中肯定存在冲突:让我解释一下
我有一个UITableView
,其中包含我编写的数据数组。
然后我有另一个数组,其中包含用户必须编辑和保存的xcdatamodel
数据
如果我在调用手机时使用此屏幕prepareForSegue
me,手机会崩溃
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([[segue identifier] isEqualToString:@"DetailSchedule"]) {
NSManagedObjectModel *selectedSche = [schedule objectAtIndex:[[self.tableView indexPathForSelectedRow] row]];
DetailMainHallTableViewController *destViewController = segue.destinationViewController;
DetailMainHallTableViewController *dc = segue.destinationViewController;
NSIndexPath *indexPath = [self.tableView indexPathForCell:sender];
dc.mainhall = self.myArraySchedule1[indexPath.row];
destViewController.sche = selectedSche;
}
}
但是如果我使用此屏幕运行应用程序,则会运行prepareforsgue
好,但我没有保存输入的数据
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([[segue identifier] isEqualToString:@"DetailSchedule"]) {
//NSManagedObjectModel *selectedSche = [schedule objectAtIndex:[[self.tableView indexPathForSelectedRow] row]];
DetailMainHallTableViewController *destViewController = segue.destinationViewController;
DetailMainHallTableViewController *dc = segue.destinationViewController;
NSIndexPath *indexPath = [self.tableView indexPathForCell:sender];
dc.mainhall = self.myArraySchedule1[indexPath.row];
//destViewController.sche = selectedSche;
}
}
然而,奇怪的是,如果我们取下//并再次运行,我在出现之前输入的数据会保存我,我可以编辑或添加它们。
这两行代码可以理解问题吗?如果您使用的是
UITableView
您应该将NSManagedObjectModel
代码移动到tableView:didSelectRowAtIndexPath
方法,然后将该对象作为segue的发送方发送