目前正在创建一个基本的图像幻灯片应用程序,为此,我创建了一个UIImage数组并使用以下代码调用它们。
let imageNames = (0...50).map
{
"\($0).JPG"
}
let image = UIImage(named: imageNames[0])
imageView.animationImages = image
imageView.animationDuration = 50
imageView.startAnimating()
想知道是否有人能提供一些建议。
答案 0 :(得分:0)
您需要在数组中添加图像名称而不是UIImage。
let images: [String] = [
"0.JPG",
"1.JPG")!]
从数组字符串中获取图片
let image = UIImage(named: images[0])
答案 1 :(得分:0)
问题不在于图像在磁盘上占用多少内存,而在于解决屏幕上所有像素所需的内存。在使用之前,您并不需要存储图像。一张小于1MB的图像将很快加载。
相反,您只需要保留图像的路径,只有当您到达显示图像的代码时,才会加载它并显示它。
所以,结合亚历山大和KKRocks的答案:
在班级的顶部,定义文件名数组:
let imageNames = (0...55).map { "\($0).JPG" }
您要显示图片的位置:
if let image = UIImage(named: images[0]) {
... the code that is blowing up ...
}
如果您不确定如何保存文件并将其检索,请参阅我最近就该主题提供的答案: