我尝试学习核心数据并遇到问题:我设置了一个简单的数据模型,并使用绑定在表视图中显示我的实体实例的一些属性。表视图嵌入(左侧)分割视图中。如果在表视图中选择了某些内容,则右侧应显示类似“详细项目视图”的内容,我可以在其中查看(和更改)实体的所有属性。如果未选择任何内容,则右侧的视图应显示不同的视图(仅包含一个标签,表示未选择任何内容)。应用程序(使用Xcode 8在Swift 3中编写)目前看起来像这样:
所以添加和删除工作正常。但我不知道如何根据选择或不选择某些内容来更改要在右侧显示的视图。首先,我尝试使用如下所示的故事板来布局UI:
右边的两个视图是放在底部中间视图中的视图。我给了他们一个Storyboard ID,以便我可以使用它们来实例化一个新的ViewController。我还将ListViewController设置为包含tableView的委托,以便我可以使用tableViewSelectionDidChange(_ notification:Notification)来跟踪选择。现在,我不知道如何正确覆盖该函数,以便在未选择表视图中的项目时,NSSelitView右侧会显示NoSelectionViewController。当然,我不知道如何在选择某些内容后显示StudentViewController。我如何将数据传递给StudentViewController(例如,我如何知道选择了哪个学生并访问属性)?