我有一个带4个单元的UICollectionView,我有一个名为SwipingController的4个页面的控制器。
我想为每个单元格设置一个UIViewController,我该如何实现呢?
答案 0 :(得分:2)
我反对你的意图。
最好只有视图管理他们的布局,您不需要控制器来管理布局。 如果你朝着这个方向前进,我不认为你将来能够拥有一个熟悉的架构(MVC / MVVM / MVP / VIPER ......)。
同时检查this。它将帮助您更好地理解视图控制器的作用。
尽管如此,您可以使用addChildViewController
(documentation here)
添加子视图
let controller = storyboard?.instantiateViewController(withIdentifier: "test") as! UIViewController
self.addChildViewController(controller)
controller.view.frame = CGRect(0, 44, 320, 320)
self.view.addSubview(controller.view)
controller.didMove(toParentViewController: self)
删除子视图
let vc = self.childViewControllers.last
vc.removeFromSuperview()
vc.willMove(toParentViewController: nil);
vc.removeFromParentViewController()