Objective c SplitView的DetailView上的UITableView未加载其数据
使用Xcode 4.3.1,iOS 5.1的ipad应用程序,没有核心数据 在我的故事板上,我有一个主细节项目。主控台显然有一个TableView,这很好:通过在主控台TableView中选择一个项目,我的详细信息数据在详细信息视图控制器中由模板代码调用setDetailItem设置,我从'didSelectRowAtIndexPath'调用该模板代码。那很好 “我的详细视图/场景”包含另一个UITableView,以及一些文本字段等。 此UITAbleView的数据源和委托连接到详图视图控制器。 在详细视图控制器的接口文件中,我将协议UITableViewDataSource和UITableViewDelegate添加到预配置的UISplitViewController Delegate旁边 我在详细视图控制器中实现了numberOfSectionsInTableView、numberOfRowsInSection、cellForRowAtIndexPath和didSelectRowAtIndexPath方法 但是,只有在建立主表视图的列表时,才调用它们,而不是在主表列表/表视图中选择项目时。当我在主列表/表格视图中选择一个项目时,细节数据将在细节视图控制器中设置,但例如,从未调用细节控制器中的“cellForRowAtIndexPath”,并且细节表格视图未更新/初始化。但是,详细视图中的文本字段加载了正确的数据 我想我错过了什么。在我准备tableview的数据时,我必须给它一个提示吗?如果是,如何。。。?tableview本身没有连接到插座或操作,是吗Objective c SplitView的DetailView上的UITableView未加载其数据,objective-c,uitableview,ios5,uisplitviewcontroller,Objective C,Uitableview,Ios5,Uisplitviewcontroller,使用Xcode 4.3.1,iOS 5.1的ipad应用程序,没有核心数据 在我的故事板上,我有一个主细节项目。主控台显然有一个TableView,这很好:通过在主控台TableView中选择一个项目,我的详细信息数据在详细信息视图控制器中由模板代码调用setDetailItem设置,我从'didSelectRowAtIndexPath'调用该模板代码。那很好 “我的详细视图/场景”包含另一个UITableView,以及一些文本字段等。 此UITAbleView的数据源和委托连接到详图视图控制器
谢谢 您需要实现从RootView到Detailview的自定义委托一对一通信。 如下图所示, 在RootView中实现委托
@protocol RootViewControllerDelegate <NSObject>
-(void)didchangeSelectionInRootViewList:(id)toItem;
@end
在创建splitview控制器时,不要忘记将Rootview中的委托设置为detailview
还可以在Detailview中捕获委托,并用足够的数据重新加载TableView
谢谢
纳文山
//a delegete need in caes of splitview to refresh the detailview.
-(void)callDelegate:(id)sender {
if(self.delegate && [self.delegate respondsToSelector:@selector(didchangeSelectionInRootViewList:)]) {
[self.delegate didchangeSelectionInRootViewList:sender];
}
}