iphone - 使用 nib 定义 UICollectionViewCell

标签 iphone ios interface-builder uicollectionview uicollectionviewcell

如果我没理解错的话,一个UICollectionViewCell的内容应该进入其 contentView 属性,背景进入 backgroundView

然而,当我将 UICollectionViewCell 拖到 Interface Builder 时,没有提及 contentViewbackgroundView。如果我添加 subview ,它们会将整个单元格作为其父级,而不是 contentViewbackgroundView

那么用 IB 定义 UICollectionViewCell 的正确方法是什么?

最佳答案

“如果我添加 subview ,它们会将整个单元格作为其父级,而不是 contentView”

这不是真的。如果您拖入一个 UICollectionViewCell,并向其中添加 UI 元素,那么您就是将它们添加到内容 View 中。它没有出现在对象列表中的事实并不意味着它不存在(NSBox 也是如此 - 它有一个内容 View 也没有出现在 IB 中)。如果在 collectionView:didSelectItemAtIndexPath: 中,你记录 cellForItemAtIndexPath,然后查看它的 subview ,你只找到一个,它与你通过记录 cell.contentView 得到的是同一个。如果您记录它的 subview ,那么您将看到您的 UI 元素。

现在,就背景 View 而言,我不认为这是您可以从 IB 访问的内容。您可以拥有一个带有 UIView 的 xib 文件,然后将其分配给单元格的 backgroundView 属性。

关于iphone - 使用 nib 定义 UICollectionViewCell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13416113/

相关文章:

iphone - 在 iPhone 应用程序开发中,如何将数据存储到文本文件中并在应用程序再次启动时检索它?

ios - swift MVVM : Where to keep custom model data if we have an array of models

iphone - 两部 iPhone 之间的距离

iphone - 有没有办法在我的 UIImageView.image 属性更改时收到通知?

ios - 调用 indexPathForCell 时崩溃

ios - 在 Swift 中将一张图像置于另一张图像的中心

objective-c - iOS6 xib错误 "loaded the "ViewController"nib but the view outlet was not set .'"

cocoa-touch - 为 Interface Builder 创建自定义按钮

iphone - 如何在 UIScrollView 中移动 UIImageView?

javascript - Phonegap iOS jquery 固定 header 不起作用