1

我有一个奇怪的问题。我正在尝试使用 Kingfisher 在我的应用程序中加载和缓存来自 Firebase 的图像。问题是 kkingfisher 不下载图像。我正在使用本地存储的占位符图像,滚动视图显示该图像。如果我从命令中删除占位符部分,应用程序将崩溃。所以我知道 Kingfisher 函数的工作原理是至少将占位符 Image 放入 UIImageView 而不是 URL 中的图像。这是代码:

你能指出我正确的方向吗?

import UIKit
import Kingfisher

class Backprogramme: UIViewController {

    override var prefersStatusBarHidden: Bool {
        return true
    }

    @IBOutlet var BackPScroll: UIScrollView!

    var imageArray = [UIImage]()
    var folie1Image = UIImageView()

    override func viewDidLoad() {
        super.viewDidLoad()

    let folie1URL = URL(string: "https://firebasestorage.googleapis.com/v0/b/backmaster-cdb60.appspot.com/o/Folie1.PNG?alt=media&token=efcb8e93-b817-41f3-a96f-946fd47cf468")!
    folie1Image.kf.setImage(with: folie1URL, placeholder: #imageLiteral(resourceName: "first"))

      imageArray = [folie1Image.image!]

        for i in 0..<imageArray.count {     
            let imageView = UIImageView()
            imageView.image = imageArray[i]
            let xPosition = self.view.frame.width * CGFloat(i)
            imageView.frame = CGRect(x: xPosition, y: 0, width: self.BackPScroll.frame.width, height: self.BackPScroll.frame.height)

            BackPScroll.contentSize.width = BackPScroll.frame.width * CGFloat(i+1)
            BackPScroll.addSubview(imageView)
        }
        // Do any additional setup after loading the view.
    }
}
4

1 回答 1

1

我遇到了同样的问题,发现我在日志“无法加载资源,因为应用程序传输安全策略需要使用安全连接”中有这个问题。

我通过在info.plist中添加NSAppTransportSecurity作为字典来修复它,然后我添加了Allow Arbitrary Loads boolean with YES 作为值。它立即起作用。 在此处输入图像描述

于 2018-11-22T10:05:19.840 回答