在我的主屏幕中,有多个UICollectionView
部分,因此我为每个部分(xib
s使用了单独的单独视图(UICollectionView
),现在我必须执行导航({{ 1}})即使没有错误,我也无法执行
我在导航下使用用户代码(didSelectItemAt
)
didSelectItemAt
答案 0 :(得分:0)
尝试以下方法:
let storyboard = UIStoryboard(name: "ProductListing", bundle: nil)
let productListingVC = storyboard.instantiateViewController(withIdentifier: "ProductListingViewController")
self.present(productListingVC, animated: true, completion: nil)
答案 1 :(得分:0)
更好的方式将从视图发送回调到ViewController并从中执行导航,如下所示:
class View: UIView {
var didTapSomething: () -> Void
}
并在ViewController中:
class ViewController: UIViewController {
@IBOutlet var view: View!
override func viewDidload() {
super.viewDidLoad()
view.didTapSomething = {
//perform navigation
}
}
}
答案 2 :(得分:0)
您可以为此使用callbacks
。
在您的collectionView View
中添加此回调:
var didSelectCallback: (() -> Void)?
然后在didSelectItem
的{{1}}委托方法中编写:
collectionView
然后在控制器中添加此if let callBack = didSelectCallback {
callBack()
}
时添加此回调:
collectionView View