我目前正在开发一个使用 CoreData 的 iPad Split View应用程序。
最初 MasterViewController 有一个选择的 Cases 呈现给用户。当用户选择一个案例时,该案例的详细信息将显示在详细信息 View 中。从这里开始,您可以使用嵌入在 DetailView 中的选项卡栏向下钻取与案例(即连接到案例的文档)的一对多链接中的其他对象。这一切都很好。
但是,一旦用户选择了一个案例,我想使用主视图中的屏幕空间来使用新选项:
DisplayManagedObject *managedObject = [self.fetchedResultsController objectAtIndexPath:indexPath];
PersonMasterViewController *mvc = [[PersonMasterViewController alloc] init];
mvc.comingFromCase = managedObject;
[self.navigationController pushViewController:mvc animated:YES];
一切正常,我得到了另一个主视图 Controller 的新项目列表。
所以这是我的问题。如何让 Detailview 响应来自新主视图 Controller 的命令?在新的 Masterviewcontroller 中,我尝试了类似的东西:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
DisplayManagedObject *selectedObject = comingFromCase;
[self.detailViewController.navigationController popToRootViewControllerAnimated:YES];
self.detailViewController.detailItem = selectedObject;
[self.detailViewController.tableView reloadData];
}
但没有结果。谁能指出我正确的方向?
最佳答案
没关系,我是个彻头彻尾的白痴 -_- 因为我从新 Controller 再次调用 Case,显然页面没有刷新。所以我看不出有什么区别。一旦我调用其中一个底层对象,它就会显示正确的信息。
关于objective-c - iPad 在 Splitview 中使用多个 masterviewcontroller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8493747/