在我的应用中,我正在使用自定义图像数组视图。用户每个帖子上传的许多图像应该是以类似轮播的方式显示的多个图像。
在firebase中,我有从images到imageFive的值
*(ar+1)
正如您在本示例中所看到的,只有一个值中包含一个字符串。用户可以发布一到五个图像。我想添加用户上传的许多图像并将其显示在轮播中。这就是我现在所拥有的。
{
"image" : "W585B.jpg",
"imageFive" : "",
"imageFour" : "",
"imageThree" : "",
"imageTwo" : "",
}
现在,我必须单击两次单元格才能显示图像。单击单元格后,如果没有显示任何内容,则会在第二次单击时显示图像。同样,如果我单击另一个单元格,它会在第一次单击时显示上一个单元格的图像,然后在第二次单击时显示该单元格的图像。
此外,当我点击包含多个图像的单元格时,在第一次单击时它没有显示任何内容,在第二次单击时,应用程序崩溃并显示致命错误:索引超出范围
答案 0 :(得分:0)
我不确定,但您也可以尝试一下:
func carousel(_ carousel: iCarousel, viewForItemAt index: Int, reusing view: UIView?) -> UIView {
var imageView = view as! UIImageView
if view != nil {
imageView = UIImageView(frame: CGRect(x: 20, y: 0, width: 250, height: 270))
// imageView.backgroundColor = UIColor.lightGray
imageView.contentMode = .scaleAspectFit
imageView.clipsToBounds = true
carousel.clipsToBounds = true
imageView = view as! UIImageView
imageView.image = imageArray[index]
imageArray.removeAll() // are you sure about this line?
}
return imageView
}