【问题标题】:Failed to animate gif using SDWebImage in swift 3在 swift 3 中使用 SDWebImage 动画 gif 失败
【发布时间】:2017-09-06 15:56:52
【问题描述】:

图片已加载,但无法为 gif 制作动画

override func draw(_ rect: CGRect) {
    let urlpath:String = Bundle.main.path(forResource: "logo", ofType: "gif")!
    let url   = URL(fileURLWithPath: urlpath)
    let data = try? Data(contentsOf: url)
    let image:UIImage = UIImage.sd_animatedGIF(with: data)
    loaderImage.image = image

}

【问题讨论】:

    标签: swift swift3 sdwebimage


    【解决方案1】:
    let url = Bundle.main.url(forResource: "play", withExtension: "gif")
    
            DispatchQueue.main.async {
    
                self.image.sd_setImage(with: url!)
            }
    
            let imageData = try? Data(contentsOf: Bundle.main.url(forResource: "play", withExtension: "gif")!)
            let advTimeGif = UIImage.gifImageWithData(imageData!)
            let imageView2 = UIImageView(image: advTimeGif)
            imageView2.frame = CGRect(x: 20.0, y: 420.0, width: self.view.frame.size.width - 40, height: 150.0)
            view.addSubview(imageView2)
    

    【讨论】:

    • 您将如何使用网址进行此操作。我试着把它放在你放“玩”的地方,它不起作用。谢谢
    • @BenAkin NSData *gifImage = [NSData dataWithContentsOfURL:[NSURL URLWithString:pariseurl]];此代码在 Objective c 中,但您可以了解将 gifImageUrl 获取到数据的位置
    【解决方案2】:

    如果需要坚持使用SDWebImage,那么我会注意(如library github 中所述):

    动画图像 (GIF) 支持

    • 从 4.0 版本开始,我们依靠 FLAnimatedImage 照顾我们的动画图像。

      ...

    • 要使用它,只需确保使用 FLAnimatedImageView 而不是 UIImageView。

    FLAnimatedImage:

    要在 Swift 中使用它的简单代码,您可以查看answer

    【讨论】:

    • 您将如何使用网址进行此操作。谢谢
    猜你喜欢
    • 1970-01-01
    • 2010-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-02
    • 1970-01-01
    • 2012-03-22
    相关资源
    最近更新 更多