2016-06-11 65 views
1

我在网上搜索了几个小时,但找不到解决问题的方法。如何将特定的ViewController分配给UIView(在UICollectionView中)?

我有一个查看在我的故事板中包含一个UICollectionView。我已经设置了UICollectionView的单元格非常大(只有一个可以出现在屏幕上,您必须水平滑动以查看其他单元格)。在我的应用程序中,我使用这种布局一个接一个地询问用户一些问题。用户可以通过触摸按钮,围绕地图移动,选择日期等等来回答这些问题。每个问题具有相同的布局;它们显示在一个框中,带有标题标签和按钮。这就是我选择使用UICollection View的原因。

我想显示一个特定的视图(允许用户回答(按钮,地图,DatePicker等..))的蓝色矩形中的每个问题(见下图)。

A screenshot of my view

我的想法是建立在我的故事板多ViewControllers并能够告诉:“好了,第一个问题(第一单元),把视图XXX容器,第二,把视图YYY等......“。

我该怎么做?

我试着添加一个ContainerView,但我们只能链接故事板中的一个视图。

我希望能够做这样的事:

func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell { 

    let cell = collectionView.dequeueReusableCellWithReuseIdentifier("Cell", forIndexPath: indexPath) as! SearchQuestionBox 
    cell.questionAnswersZone.view = storyboard.viewNumberOne //Just for the idea haha 

    return cell 

} 
+0

如果要在集合视图中显示它们,可以为每个问题创建自定义收集单元格。 – tbilopavlovic

+0

为什么不行,但我必须在每个自定义收集单元上放置标题和按钮,如果我决定改变某些内容,我将不得不在每个自定义收集单元上更改它,这不是很干净...不是吗? – Tim

+0

然后创建自定义视图,从xib加载它并将其作为子视图添加到自定义单元格中。自定义单元格将具有标题和按钮,并查看哪些行为将作为您的自定义视图的容器 – tbilopavlovic

回答

1

我不会使用多个视图控制器建议。

相反,您可以将每个单元格的视图添加到一个主视图控制器。请记住,您可以将视图框设置为不在屏幕外。

+0

谢谢您的回答!难道你不觉得有更好的办法吗?因为我必须在每个框架上复制/粘贴标签和按钮。如果有一天,设计会发生变化,那么我将不得不在每一个单独的框架上应用新的设计,但这并不是真的不干净?我不知道我是否理解正确 – Tim

相关问题