I think you need to do a modal segue based on the object that was selected. For example:
in the implementation of this delegate method for collection view controllers:
collectionView:didSelectItemAtIndexPath:
{
//get the array item using index path: you probably have 1 section
NSString *object=[navItems objectAtIndex:[indexPath.row]];
//now use switch case to check what string presents which view controller
switch (indexPath.row){
case 0:
[self presentViewController:[MYVC1 new] animated:YES completion:NULL];
break;
//do this case for whatever objects you want to modally segue
}
}
Unfortunately you can't case on NSString as of iOS7. If you set the array, you know which index has what string and you refer to that view controller inside case block.
I know its tedious but try to improve on it. Its way better than hooking 8 segues on storyboard. Make sure you aren't doing Push Segue else you need to do [self.naviagtionController pushVC:Animated];
Hope it helps!