我正在Swift中开发一个iOS应用程序。
我创建了一个UICollectionViewController。我已经用图像填充了UICollectionViewCells。我如何连接单独的单元格与不同的ViewController,例如,如果我点击第一个单元格,他们将显示下一个ViewController(但新的ViewController不需要来自单元格的数据,内容完全不同。我只会打开下一个查看控制器,并为UiCollectionView中的每个图像。
使用prepareforsegue我遇到的问题是,当我点击同一ViewController显示的每个图像时。我希望每个图像都打开一个不同的新ViewController。我需要哪种功能
答案 0 :(得分:1)
Segues定义他们正在转换的viewController。如果每个单元格需要转到另一个viewController,那么每个单元格都需要一个segue。
从UICollectionViewController
顶部的viewController图标连接您的segue,而不是从原型单元格连接:
在属性检查器中为每个segue分配一个唯一标识符:
在collectionView(_:didSelectItemAtIndexPath:)
中,使用indexPath
选择正确的segue标识符并致电performSegueWithIdentifier(_:sender:)
:
override func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {
let segues = ["goToVC1", "goToVC2", "goToVC3"]
let segueID = segues[indexPath.item]
performSegueWithIdentifier(segueID, sender: self)
}