在 Storyboard中,我想描述一个 UICollectionViewController
,它有一个普通的 UIView
作为它的 Root View (view
参数) . Root View 将是一个容器,其中包含 UICollectionView
作为子项,其前面还有另一个 UIView
。
(我想将我自己的 UIGestureRecognisers
放在 UIColellectionView
的前面以拾取平底锅和夹点。我将禁用 UIColellectionView
的“用户交互”)。
如果我从“对象库”中拖动 UICollectionViewController
, Storyboard编辑器似乎不希望我这样做。可以做到吗?从 UIViewController
而不是 UICollectionViewController
子类化会更好吗?
对问题的简短回答:是的,必须。 UICollectionViewController
要求它的 [self view]
是 UICollectionView
实例。
不要这样做,而是让顶级 UIViewController
拥有 UICollectionViewController
作为子级。这适本地分离了每个 View 的代码/逻辑/所有权,并为您的“ View ”的每个部分正确分配 Controller 。
如果您是从代码设置,请使用 UIViewController
作为顶级 view
的所有者,并使用 addChildViewController:
来处理嵌套的 Collection View Controller 。
如果您从 Storyboard 进行设置,请使用 UIViewController
场景,该场景具有您选择的 View 层次结构,但包含 Storyboard 编辑器的“对象库”中的“容器 View ”对象在它的某个地方。将 UICollectionViewController
放在单独的场景中。将您添加的“容器 View ”指向 Storyboard 中 UICollectionViewController
的场景。
关于ios - UICollectionViewController 的 UICollectionView 必须是它的根 UIView 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20950496/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |