从UICollectionViewController推送到UINavigationController时崩溃

时间:2014-01-14 13:25:55

标签: ios objective-c uinavigationcontroller

我目前正面临着我的应用程序的问题。 我有一个嵌入在TabBarController中的NavigationController中嵌入的UICollectionViewController。

基本上,我有一组用户,当我点击它时,我想转到详细视图。

当我尝试执行segue时,发生崩溃,我收到消息:“ * ** 由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'不支持推送导航控制器'

我的故事板结构如下所示:

UITabBarController - > UINavigationController - > UICollectionViewController - >的UIViewController

@interface AnnuaireCollectionViewController : UICollectionViewController

    @property (strong, nonatomic) NSMutableArray *photos;

    @property (strong, nonatomic) NSMutableArray *noms;

    @property (strong, nonatomic) NSMutableArray *users;

    @property (strong, nonatomic) IBOutlet UICollectionView *collection;

@end

我的preparForSegue方法:

#pragma mark - Prepare for Segue
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    UICollectionViewCell *cell = (UICollectionViewCell *)sender;
    NSIndexPath *indexPath = [self.collectionView indexPathForCell:cell];

    UserDetailViewController *userDetailViewController = (UserDetailViewController *)segue.destinationViewController;
    userDetailViewController.userImage = [UIImage imageNamed:[self.photos objectAtIndex:indexPath.row]];
    userDetailViewController.user = [self.users objectAtIndex:indexPath.row];
}

The StoryBoard: http://i.stack.imgur.com/856Iq.png

我看了苹果文档上的示例代码,一切看起来都差不多,我不明白为什么我会收到这个错误。

我哪里出错了?

谢谢!

1 个答案:

答案 0 :(得分:0)

如果写“不支持推送导航控制器”,则不要推它。 Replase,present modal等。有很多方法可以呈现viewcontrollers。