我有一个UICollectionView,我想将数据(图像)保存在第一个单元格中,旧数据会转到下一个单元格。因此,当我保存一张新照片时,它出现在第一个单元格中,我在cellForRowAtIndexPath中尝试使用indexpath.row == 0 {}但是他只保存在其他单元格中的第一个单元格中。我可以反转保存索引或给它另一种方式?
所以有人知道我能在那里制作什么?
override func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return picture.count
}
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier("BookPicCell", forIndexPath: indexPath) as! BookPicCell
let cellcore = picture[indexPath.row]
if indexPath.row == 0 {
cell.BookImage.image = UIImage(contentsOfFile: cellcore.foto!)
}
return cell
}
感谢您的帮助。
答案 0 :(得分:0)
您需要创建一个UIImages数组并将新图像附加到该数组的前面:
pictures.insert(newImage, atIndex : 0)
在插入新图像后,您需要使用以下命令重新加载UICollectionView:
self.collectionView.reloadData()
您不希望在cellForItemAtIndexPath
中对数据进行排序