How to open view controller from didSelectRowAtIndexPath within storyboard?

好久不见. 提交于 2019-12-03 15:06:18

I presume you have the 'Detail' view as part of the storyboard (not in a separate XIB), if so you will need to place a separate NavigationController at the start of the 'Detail' TabBarItem seque.

This page has a good tutorial on what I think your trying to achieve: http://maybelost.com/2011/10/tutorial-storyboard-in-xcode-4-2-with-navigation-controller-and-tabbar-controller-part1/

Also check these links to a more in-depth Storyboard tutorial:

http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-1

http://www.raywenderlich.com/5191/beginning-storyboards-in-ios-5-part-2

Esteban

This is kinda old but if someone needs to do this here's an easy approach:

You can use add a segue from the view in the tab bar to detalleYouTube, put an identifier to the segue and do this:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath  *)indexPath
{
[self performSegueWithIdentifier:@"segueIdentifier" sender:tableView];
}

Another approach to this is not to use tableView:didSelectRowAtIndexPath but instead use prepareForSegue:sender

the way I did it was:

-(void)prepareForSegue:(UIStoryboardSegue*)segue sender:(id)sender
{
    DetailViewController *viewController = [segue destinationViewController];
    CustomObject *custObject = [arrayOfObjects objectAtIndex:[self.tableView indexPathForSelectedRow].row];
    viewController.objectNeeded = custObject;
}

This example is based on the idea that your detail view controller is connected to your table view controller.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!