【问题标题】:Why this image link not showing up in UIimageView in ios?为什么这个图片链接没有出现在 ios 的 UIimageView 中?
【发布时间】:2021-09-09 12:03:10
【问题描述】:

为什么这个图片链接没有出现在 ios 的 UIimageView 中?

var url = URL(string: "https://bill.ps/uploads/32065621a012e53f749c15b0a8468d71swift_file5486.png")

代码

func fetchImage(_ photoURL: URL?) { 
    guard let imageURL = photoURL else { return } 
    DispatchQueue.global(qos: .userInitiated).async { 
        do { 
            let imageData: Data = try Data(contentsOf: imageURL) 
            DispatchQueue.main.async { 
                let image = UIImage(data: imageData)
                print(image)
            } 
        } catch { 
            print("Unable to load data: (error)")
        } 
    } 
}

Image Link

【问题讨论】:

  • 显示完整代码
  • 正常取数据图片流程
  • 我将此评论中的代码粘贴到您的问题中,您应该将代码直接添加到问题中,而不是 cmets 中。
  • 您可以尝试使用 KingFisher pod 吗?
  • 我尝试了 KingFisher,图像也没有出现,uiimageView 白色@Menaim

标签: ios swift uiimageview storyboard


【解决方案1】:

图片本身的问题不在链接或您的代码中,我尝试过相同的图片,但在很多情况下根本没有出现,但同时出现了另一张图片,如果可以,请尝试更改它,它会工作,我什至下载了它并尝试将其手动放入资产文件中,但效果不佳,请查看以下图片:

1- 在资产中本地添加图像

2- 图像没有出现在运行中

【讨论】:

    【解决方案2】:

    首先,你真的应该使用URLSessionDownloadTask 来处理这些事情。

    无论如何,图片链接似乎可以正常工作,因此获取和显示它应该没有任何问题。

    您可以检查以下内容 -

    1. catch 内部的print 是否正在执行?
    2. 收到数据后执行print(image) 会打印什么?
    3. 您的UIImageView 实例是否在屏幕上可见并且在运行时具有非零的widthheight 值?

    您必须在运行时使用 View Hierarchy Debugger 确定第 3 点。

    【讨论】:

      【解决方案3】:

      我检查了后端开发人员的问题,它与 api 服务器上的 WAF 标头有关。

      WAF 阻止标头中缺失的请求。

      【讨论】:

        猜你喜欢
        • 2011-11-19
        • 1970-01-01
        • 2021-12-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-09-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多