【发布时间】:2015-08-05 14:13:46
【问题描述】:
在我的应用程序中,我有一个集合视图,单元格有一个图像和按钮。 UIImage 代表用户想要下载的一本书。当用户单击单元格中的 按钮 时,我应该显示一个进度视图,代表下载进度。 我的细胞是笔尖。 我的问题在于管理所有此单元格中的进度视图。 当我单击一个单元格时,进度条显示在另一个单元格中! 以前有人尝试过这样做吗? 已编辑1: 我的 cellForItemAtIndexPath 是:
let cell = collectionView.dequeueReusableCellWithReuseIdentifier("guides-cell", forIndexPath: indexPath) as! GuidesViewCell
cell.guidesTypeLabel.text = guidesArray[indexPath.item].Title
cell.downloadLink = guidesArray[indexPath.item].Download1
cell.downloadButtonOutlet.addTarget(self, action: "downlaodAction:", forControlEvents: UIControlEvents.TouchUpInside)
cell.downloadButtonOutlet.tag = indexPath.row
已编辑2:
我尝试从 cell 类 调用下载函数,我采用按钮的动作插座,并从中调用下载函数。 像这样:
@IBAction func downloadButtonAction(sender: AnyObject) {
FileIsdownloding = true
downloadActivityIndicator.alpha = 1
downloadActivityIndicator.startAnimating()
downloadProgressBar.alpha = 1
DownloadpdfsFilesControllerVar.downloadPDFFile(downloadLink, view:self, progressBarVar: downloadProgressBar, senderButton: sender as! UIButton)
}
我仍然有同样的问题。进度条显示在随机单元格中!!!! 那是糟糕的!
如果有任何帮助,我将不胜感激。
【问题讨论】:
-
似乎您没有以正确的方式重用集合视图单元格。你能显示cellForIndexPath的代码吗?
-
参见 WWDC 2015 的“Best Practices in Progress Reporting”。他们演示了这个确切的问题,以及一个完整的示例项目。 developer.apple.com/videos/wwdc/2015/?id=232(您使用错误单元格的具体问题可能意味着您错误地出售和配置单元格,并且与进度报告无关,但示例项目也将展示如何正确执行此操作。)
-
@Kevin 我编辑我的问题
-
@RobNapier 谢谢 :) 我一定会检查你的链接
-
@RobNapier 我编辑了我的问题,你能检查一下吗?我会非常感谢任何帮助。
标签: ios iphone swift uicollectionview