问题是这一行返回nil:
if let indexPath = self.collectionView?.indexPathForCell(sender as! UICollectionViewCell)
由于这个原因,我不能传递任何信息,标识符和委托都已设置。
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "DetalleSegueIdentifier" {
if let indexPath = self.collectionView?.indexPathForCell(sender as! UICollectionViewCell) {
let detailVC = segue.destinationViewController as! DetalleNoticiaViewController
detailVC.contact = self.noticia[indexPath.row]
}
}
}
func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {
self.performSegueWithIdentifier("DetalleSegueIdentifier", sender: collectionView.cellForItemAtIndexPath(indexPath))
}
有什么帮助吗?
3条答案
按热度按时间osh3o9ms1#
问题是如何尝试取回单元格。您必须在performSegueWithIdentifier中传递单元格,然后在prepareForSegue中恢复它。以下是代码:
然后呢
希望能有所帮助!
ws51t4hk2#
尝试这样..
然后得到这样的索引路径...
kyxcudwk3#
问题是var collectionView在我的ViewController中没有引用,因为这个原因总是返回nil。我的错误,谢谢你的回答。