ios swift MPMediaItemArtwork requestHandler 从 SDWebImage 返回图像

标签 ios swift sdwebimage mpnowplayinginfocenter

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

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

})

我无法从内部函数返回图像。如何解决这个问题?

最佳答案

从您提供的代码来看,sd_setImage 方法的闭包具有 void 返回值,您不能在那里定义非 void 返回值。

但是您可以在闭包内定义 MPMediaItemArtwork。那是您可以使用图像的时间。

关于ios swift MPMediaItemArtwork requestHandler 从 SDWebImage 返回图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53723623/

相关文章:

ios - 将 MH_EXECUTE 转换为 MH_DYLIB (mach-o)

ios - 如何将拖动单元​​格的 indexPath.row 传递给函数? ( swift )

ios - 通过 UITableViewCell 中的 UIButton 更新模型

html - 如何在 TextView 中显示 HTML 文本

ios - 如何使用 SDWebImage 调整下载的图像大小?

ios - RNImageToBase64 native 模块因 URL 而崩溃

android - Ionic Cordova 通过从最近的应用程序列表中滑动应用程序来检测应用程序终止事件

swift - 如何检查我的 NSObjects 数组是否包含 Swift 中的特定 NSObject?

ios - 使用 SDWebImage block 的 ImageView 上的圆形进度条

ios - 使用 SDWebImage 为 UICollectionView 可重用单元从路径加载图像 - Swift