Swift Can';无法从UITableViewCell显示viewcontroller

Swift Can';无法从UITableViewCell显示viewcontroller,swift,uitableview,uicollectionview,uicollectionviewcell,Swift,Uitableview,Uicollectionview,Uicollectionviewcell,基本上,我在tableviewcell中有一个CollectionView,下面是我用来推送到另一个viewcontroller的方法 以下是代码: class recipeRelated: UITableViewCell,UICollectionViewDelegate,UICollectionViewDataSource { func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPat

基本上,我在tableviewcell中有一个CollectionView,下面是我用来推送到另一个viewcontroller的方法

以下是代码

class recipeRelated: UITableViewCell,UICollectionViewDelegate,UICollectionViewDataSource {
    func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath)  {       
       let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
       let resultViewController = storyBoard.instantiateViewController(withIdentifier: "recipeContainerView") as! recipeContainerView
       self.window?.rootViewController?.show(resultViewController,sender: self)
    }
}
提前谢谢你

使用此扩展:

extension UIView {
    var parentViewController: UIViewController? {
        var parentResponder: UIResponder? = self
        while parentResponder != nil {
            parentResponder = parentResponder!.next
            if let viewController = parentResponder as? UIViewController {
                return viewController
            }
        }
        return nil
    }
}
这将允许任何视图访问其第一个父控制器。所以你可以这样使用它:

self.parentViewController?.show(resultViewController, sender: self)
使用此扩展名:

extension UIView {
    var parentViewController: UIViewController? {
        var parentResponder: UIResponder? = self
        while parentResponder != nil {
            parentResponder = parentResponder!.next
            if let viewController = parentResponder as? UIViewController {
                return viewController
            }
        }
        return nil
    }
}
这将允许任何视图访问其第一个父控制器。所以你可以这样使用它:

self.parentViewController?.show(resultViewController, sender: self)

请从github下载一个集合视图示例项目,以便轻松了解如何连接所有内容,为您找到了以下内容:请从github下载一个集合视图示例项目,以便轻松了解如何连接所有内容,为您找到了以下内容: