繁体   English   中英

使用Kingfisher加载Swift图像时出现问题

[英]Difficulty loading Image in Swift with Kingfisher

我有一个奇怪的问题。 我正在尝试使用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.
    }
}

我遇到了同样的问题,发现我在日志中有这个问题“由于App Transport Security策略要求使用安全连接,因此无法加载资源”。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM