CollectionView CollectionCell segue到DetailView

时间:2014-03-19 22:04:24

标签: ios7 xcode5 uicollectionview uistoryboardsegue uicollectionviewcell

在我的CollectionView中,我在CollectionCells中显示两个“对象类型”。我想要做的是当用户点击一个单元格时,在“didSelectItemAtIndexPath”中确定所选对象并使用“performSegueWithIdentifier”来切换到相应的DetailTableViewContoller以显示“对象”的详细信息。

我的设置方式是NavigationController segue(root)到MyCollectionView segue(push)到DetailTableView。 MyCollectionView中的CollectionCell配置为segue到DetailTableView。

简单地说,当我有以下代码时,在MyCollectionView中选择一个单元格,它正确地分割到DetailTableView但是当我选择DetailTableView中的Back按钮时它会失败。

- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath  *)indexPath {
[self performSegueWithIdentifier:@"MySegueIdentifier" sender:self];
}

我得到了可怕的

[6313:a0b] nested push animation can result in corrupted navigation bar
[6313:a0b] Finishing up a navigation transition in an unexpected state. 
       Navigation Bar subview tree might get corrupted.

如果我注释掉performSegueWithIdentifier ...行,它会正确分割,并且DetailTableView中的Back按钮可以正常工作。

类似的代码模式在TableViewController seque中运行到DetailViewController。

有什么建议吗?将segue从CollectionCell设置为DetailViewController是否合适?

1 个答案:

答案 0 :(得分:0)

想出来了。在单元格中有segue是不正确的。在控制器级别设置它是正确的。