gpt4 book ai didi

ios - 将 View 添加到 StoryBoard 中的 CollectionView 标题

转载 作者:行者123 更新时间:2023-11-30 12:32:13 26 4
gpt4 key购买 nike

我的 CollectionView 顶部有 2 个 View ,只想滚动所有这 3 个 View 。我知道最好的方法是将这两个顶部 View 放在我的 collectionView header 中。如何在没有任何代码的情况下在 Storyboard(界面生成器)中实现这一点?(我在另一个 tableView 中使用这种方式,但我无法使用 CollectionoView 做到这一点)

我将这两个 View 拖到我的 collectionView 的 reusableView(headerView) 中,并且遇到了此错误: enter image description here

最佳答案

您无法在界面生成器中拖放并获取 Collection View 的标题 View 。您必须另外实现 viewForSupplementaryElementOfKind 方法,该方法返回 UICollectionReusableView。在使用集合可重用 View 时,我们必须以不同的方式处理该 View ,类似于我们对可重用单元所做的处理。

遵循的步骤。

  1. 为该标题 View 创建一个类 (HeaderViewExample)。
  2. 将类 (HeaderViewExample) 分配给您刚刚在界面构建器中添加的可重用 View 。
  3. 为该可重用 View 提供可重用标识符 (HeaderViewExample)。
  4. 现在,您可以向可重用 View 添加标签或按钮,并在 HeaderViewExample 类中为这些导出创建导出。

(注意:使用可重用 View 时,不要直接在 Controller 中创建 socket 。)

现在使用以下代码更新您的 CollectionViewController。

override func collectionView(collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: 
NSIndexPath) -> UICollectionReusableView {

var reusableView = UICollectionReusableView()

if kind == UICollectionElementKindSectionHeader {
guard let view = collectionView?.dequeueReusableSupplementaryViewOfKind(kind, withReuseIdentifier: String(HeaderViewExample), forIndexPath: indexPath) as? HeaderViewExample else { return reusableView }
view.label = "Test String"
view.backgroundColor = UIColor.redColor()
} else {
assert(false, "Unexpected element kind")
}

return reusableView
}

关于ios - 将 View 添加到 StoryBoard 中的 CollectionView 标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43365238/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com