带2张并排桌子的iphone/ipad

带2张并排桌子的iphone/ipad,iphone,uitableview,ipad,Iphone,Uitableview,Ipad,我想使用单独的表控制器创建一个具有两个并排表视图的横向视图 当我选择一行时,我想将该选择移动到另一个表中。最初我想要一个数组,但我无法将数组传递给另一个控制器。数组是表视图控制器的属性 然后,我尝试将选择写入核心数据,但失败了。为了简化,我在核心数据中有两个实体:具有name属性和To-one关系的Person和仅具有To-one关系的SelectedPerson 我补充了以下内容: - (void)tableView:(UITableView *)tableView didSelectRowA

我想使用单独的表控制器创建一个具有两个并排表视图的横向视图

当我选择一行时,我想将该选择移动到另一个表中。最初我想要一个数组,但我无法将数组传递给另一个控制器。数组是表视图控制器的属性

然后,我尝试将选择写入核心数据,但失败了。为了简化,我在核心数据中有两个实体:具有name属性和To-one关系的Person和仅具有To-one关系的SelectedPerson

我补充了以下内容:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    Person *person = (Person *)[fetchedResultsController objectAtIndexPath:indexPath];
    SelectedPerson *selectedPerson = [NSEntityDescription insertNewObjectForEntityForName:@"SelectedPerson"
                              inManagedObjectContext:managedObjectContext];
    [selectedPerson setValue:person forKey:@"persons"];
    [leftViewController.tableView reloadData];
    NSLog(@"Selection saved OK");
如果我从nib中临时删除我的左控制器,这将正常工作,当我将其添加回时,它将与所选人员一起打开。但在左表视图中,我得到以下崩溃日志:

[49650:207] Record saved OK
[49650:207]-[Person compare:]: unrecognized selector sent to instance
[49650:207] Serious application error.  Exception was caught during Core Data change processing: -[Person compare:]: unrecognized selector sent to instance 0x3d33ef0 with userInfo (null)
***我在这里上传了一个示例应用程序


我见过使用并排表格的应用程序,但我很难让它正常工作。任何帮助都将不胜感激。

要更新表视图,只需向其发送一条重新加载数据消息。

我找到了答案-我没有在右视图控制器中创建controllerDidChangeContent


我想,因为我正在更新一个不同于“fetchedResultsController”中的实体,所以不需要它,但事实证明确实需要它。可能是因为相反的关系。谢谢你的帮助。

谢谢你的回复。如何将重新加载的数据发送到已使用其他视图控制器打开的视图?Ie,2列并排,由左视图控制器和右视图控制器控制。我想在leftViewController上的didSelectRow上添加一个到rightViewController的重新加载。[rightViewController.tableView重新加载数据]或以任何方式将该属性调用到表视图。我为我的无偏见道歉。。。在这之前的线路是什么?如果我要创建一个新的控制器,我会有一些像。。。RightViewController*RightViewController=[RightViewController alloc];然后你的线路就可以工作了,我会推动控制器。但在这种情况下,控制器已经打开。如何引用其他控制器?当然,您需要将对rightViewController的引用存储在某个位置,以便以后可以访问它。因此,LeftViewController类应该有一个rightViewController属性,您可以在代码中或通过NIB文件中的IBOutlet创建right view控制器时指定该属性。我通过IBOutlet尝试了这一点,虽然我可以重新加载tableview,但无法传递设置为属性的数组。我回到绘图板并将选择写入数据模型,但当我从右表视图更新左表视图的实体时,它崩溃了。如果我从nib中删除左边的表,我可以选择保存到模型中的条目,并在返回表视图并重新启动时显示这些条目。只有在我再次尝试更新时才会崩溃。