始终在第一个 Cell UICollectionView 中保存数据
Posted
技术标签:
【中文标题】始终在第一个 Cell UICollectionView 中保存数据【英文标题】:Save Data always in the first Cell UICollectionView 【发布时间】:2016-03-28 15:13:25 【问题描述】:我有一个 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
感谢您的帮助。
【问题讨论】:
【参考方案1】:您需要创建一个 UIImages 数组并将新图像附加到该数组的前面:
pictures.insert(newImage, atIndex : 0)
插入新图像后,您需要使用以下方法重新加载 UICollectionView:
self.collectionView.reloadData()
您不想在 cellForItemAtIndexPath 中对数据进行排序
【讨论】:
我使用核心数据并将图像保存为字符串,所以我有这个代码` let newpic=NSEntityDescription.insertNewObjectForEntityForName("EveryPicture", inManagedObjectContext: self.mgdContext) as! EveryPicture newpic.everyfoto?.insert(bildPfad, atIndex: 0)` 带有插入出现无法将字符串转换为典型字符的错误。我从来没有听说过 Character 我可以转换吗? 如果你知道它们是字符串类型,你可以通过更精确的编译器来检查你的转换是否失败。使用:让图片数组:[字符串] = ...作为! [细绳]。这样你就知道你是否有一个字符串数组或其他东西。以上是关于始终在第一个 Cell UICollectionView 中保存数据的主要内容,如果未能解决你的问题,请参考以下文章
如何在自定义 tableView Cell 中调整标签高度和宽度