我希望从可见单元格中检索数据,例如label.text,而且我不知道如何做到这一点。
普通上下文:我有一个显示问题的collectionView(每个单元格显示一个问题) collectionView位于UIView中。
在同一个uiview中,我有一个按钮,当按下该按钮时,应该验证问题的答案。 在这一点上,我唯一要做的就是将@IBAction链接到按钮,以便从可见单元格中打印出问题(只有一个单元格可见)。
这是我如何构建单元格
func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {
return 1
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
// return arr.count
return questionData.count
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell:CollectionViewCell = collectionView.dequeueReusableCellWithReuseIdentifier("CollectionViewCell", forIndexPath: indexPath) as CollectionViewCell
let thereq:PFObject = self.questionData.objectAtIndex(indexPath.row) as PFObject
// cell.contentView.frame = cell.bounds
var action = thereq.objectForKey("action") as String
var what = thereq.objectForKey("what") as String
cell.askingQuestionLabel.text = "where \(action) \(what)"
return cell
}
按钮触摸(按钮不在单元格中)。
我知道visibleCells()
存在,但看起来我无法从中检索信息。
for cell in self.collectionView!.visibleCells() as [UICollectionViewCell] {
}
有什么办法吗?
答案 0 :(得分:0)
您已拥有自定义集合视图单元类。显而易见的解决方案是将PFObject传递给cellForItemAtIndexRow方法中的CollectionViewCell,然后在单击按钮时从单元格中检索它。
将showCells的返回值转换为集合视图单元类,然后将PFObject从中拉出。
答案 1 :(得分:0)
要访问可见单元格中的数据(例如label.text),可以使用visibleCells()方法,如下所示:
for item in self.collectionView!.visibleCells() as [UICollectionViewCell] {
var indexpath : NSIndexPath = self.collectionView!.indexPathForCell(item as CollectionViewCell)!
var cell : CollectionViewCell = self.collectionView!.cellForItemAtIndexPath(indexpath) as CollectionViewCell
//access cell data
println(cell.labelName.text)
}