Xcode 在icarousel中显示firebase图像
我正在使用icarousel显示firebase数据库中的图像。我有五张照片Xcode 在icarousel中显示firebase图像,xcode,firebase,firebase-realtime-database,firebase-storage,icarousel,Xcode,Firebase,Firebase Realtime Database,Firebase Storage,Icarousel,我正在使用icarousel显示firebase数据库中的图像。我有五张照片 var ImageOne = UIImage() var ImageTwo = UIImage() var ImageThree = UIImage() var ImageFour = UIImage() var ImageFive = UIImage() 我使用这段代码将firebase存储中的所有五个图像都保存到我的UIImages中 if let stringImage5 = self.imagesFive
var ImageOne = UIImage()
var ImageTwo = UIImage()
var ImageThree = UIImage()
var ImageFour = UIImage()
var ImageFive = UIImage()
我使用这段代码将firebase存储中的所有五个图像都保存到我的UIImages中
if let stringImage5 = self.imagesFive {
AppDelegate.instance().showActivityIndicator()
let imageRef = self.storage.reference(forURL: "gs://gsignme-14416.appspot.com/images/\(stringImage5)")
imageRef.data(withMaxSize: 25 * 1024 * 1024, completion: { (data, error) -> Void in
if error == nil {
AppDelegate.instance().dismissActivityIndicator()
self.ImageFive = UIImage(data: data!)!
}else {
print("Error downloading image:" )
}
})}
现在,我想在icarousel中显示图像,为了做到这一点,我必须将它们放入一个数组中,所以我这样做:
imageArray = [self.ImageOne, self.ImageTwo, self.ImageThree, self.ImageFour, self.ImageFive]
现在,该功能将显示所有五个图像:
func carousel(_ carousel: iCarousel, viewForItemAt index: Int, reusing view: UIView?) -> UIView {
var imageView: UIImageView!
imageView.image = UIImage(imageArray = [self.ImageOne, self.ImageTwo, self.ImageThree, self.ImageFour, self.ImageFive])
return imageView
}
但是没有显示图像。有很多异步的东西在进行,我假设您可能在下载图像之前创建并显示旋转木马,而不是用新图像刷新旋转木马 我将看一看Zero to应用程序,因为它解释了如何用图像异步填充列表,这基本上就是您正在做的 另外,不知道iCarousel是如何工作的,但我假设您的viewForItemAt索引需要一个图像,而不是数组的图像
let imageArray = [self.ImageOne, self.ImageTwo, self.ImageThree, self.ImageFour, self.ImageFive]
func carousel(_ carousel: iCarousel, viewForItemAt index: Int, reusing view: UIView?) -> UIView {
var imageView: UIImageView!
imageView.image = imageArray[index];
return imageView
}
我忘了提到最顶端的变量var imageArray:[UIImage]=[]和imageArray=[]在我的viewdidLoad中,因此func carousel中的return imageView没有返回图像