如何在Xcode 4.2的表视图中实现didSelectRowAtIndexPath?

时间:2012-03-17 06:58:26

标签: objective-c

SliderDemoController *sliderDemoController=[[SliderDemoController alloc] initWithNibName:@"" bundle:nil];
[self.navigationController pushViewController:sliderDemoController animated:YES];

我使用storyboard实现了这个方法。但这种方法不起作用。我想在表格视图单元格中打开新的控制器。

2 个答案:

答案 0 :(得分:0)

如果您想访问故事板中的任何视图控制器,那么您应该使用UIStoryBoard class。如果您不确定如何这样做,Here是关于{的Apple文档的链接{1}}并使用方法UIStoryBoard访问您的故事板 使用方法+ (UIStoryboard *)storyboardWithName:(NSString *)name bundle:(NSBundle *) storyboardBundleOrNil访问视图控制器并使用返回的视图控制器对象。希望这可以帮助您....

答案 1 :(得分:0)

您不需要查询UIStoryboard对象 - 在视图控制器之间设置转换是故事板自动执行的操作。使用故事板,您也不需要实现tableView:didSelectRowAtIndexPath:

如果您还没有,请通过控制拖动从(原型)表格单元格到目标视图控制器(看起来像SliderDemoController)中定义一个segue。 (选择Push segue类型。)对于与您发布的非故事板代码等效的功能,这就是它的所有内容 - 现在点击表格中的任何行将推入SliderDemoController

但是,您可能希望根据选择的行配置SliderDemoController,对吗?然后,在表视图控制器中,实现prepareForSegue:sender:。在那里,您可以获得对目标视图控制器的引用(来自segue参数)并根据需要进行设置。

相关问题