iOS快速MPMediaItemArtwork requestHandler从SDWebImage返回图像

时间:2018-12-11 11:51:20

标签: ios swift sdwebimage mpnowplayinginfocenter

如何在sdwebimage中将图像从MPMediaItemArtwork异步加载到MPNowPlayingInfoCenter

MPMediaItemPropertyArtwork: MPMediaItemArtwork(boundsSize: CGSize(width: 200, height: 200), requestHandler: { (size) -> UIImage in

     let fakeImageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))
     fakeImageView.sd_setImage(with: thumbURL, completed: { (image, error, cache, url) in

            if (error != nil) {
                return UIImage(named: "no_artwork") // i cannot return this
            } else {
                return image // i cannot return this
            }

     })

     return ... // how access to image from sdwebimage

})

我无法从内部函数返回图像。该如何解决?

1 个答案:

答案 0 :(得分:1)

从您提供的sd_setImage方法的闭包代码中可以得出void返回值,您无法在其中定义非void返回值。

不过,您可以在闭包内部定义MPMediaItemArtwork。那时候就可以使用图片了。