如何获取选定的 UICollectionViewCell?
Posted
技术标签:
【中文标题】如何获取选定的 UICollectionViewCell?【英文标题】:How to get selected UICollectionViewCell? 【发布时间】:2015-03-04 19:46:56 【问题描述】:我有更多部分的 UICollection 视图。我想获取选定的自定义单元格来更改背景。我用这段代码来做这个:
let cell = brandsCollection.cellForItemAtIndexPath(indexPath) as BrandCollectionCell
但是当我点击它时,应用程序崩溃并显示消息:
“在展开可选值时意外发现 nil”
我将此代码添加到didSelectItemAtIndexPath
当我想循环数组中第 0 部分的所有单元格时的另一个问题
for cell in brandsCollection.visibleCells() as [BrandCollectionCell]
它告诉我数组是空的。
我的BrandCollectionCell
或 swift 中的其他东西有什么问题吗?
提前感谢您的帮助
【问题讨论】:
尝试搜索 "在展开可选值时意外发现 nil 猜测一下,您的brandsCollection
属性为零——您是如何设置它的?通过 IBOutlet?
另外cellForItemAtIndexPath
返回一个UICollectionviewCell?
,所以你的代码应该检查cell
无论如何都不是零
【参考方案1】:
-
投射到自定义单元格时应使用
as?
您应该使用if let cell = ???
解开您的单元格并避免崩溃
返回的单元格可能不是 BrandCollectionCell
类型,这可以解释 nil 值
【讨论】:
以上是关于如何获取选定的 UICollectionViewCell?的主要内容,如果未能解决你的问题,请参考以下文章