我通过执行以下操作更新控制中心中的专辑封面:
let image:UIImage = UIImage(named: title)!
let artwork = MPMediaItemArtwork.init(boundsSize: image.size, requestHandler: { (size) -> UIImage in
return image
})
这在iOS 10中完美运行,但我希望我的应用程序允许iOS 9和10用户。每当我这样做时,我都会收到错误
init(boundsSize:requestHandler :)仅适用于iOS 10或更高版本
所以,我需要将我的代码更改为
let image:UIImage = UIImage(named: title)!
if #available(iOS 10.0, *) {
let artwork = MPMediaItemArtwork.init(boundsSize: image.size, requestHandler: { (size) -> UIImage in
return image
})
} else {
// What goes here??
}
我不知道如何在iOS 9中执行此操作。我该怎么做?
答案 0 :(得分:0)
在iOS 10之前,除了简单init()
之外,MPMediaArtwork的初始化程序为init(image:)
。
答案 1 :(得分:0)
您应该在iOS 9上使用MPMediaItemArtwork(image:image)。
var artwork:MPMediaItemArtwork!
if let image = UIImage(named: imageName) {
if #available(iOS 10.0, *) {
artwork = MPMediaItemArtwork.init(boundsSize: image.size, requestHandler: { (size) -> UIImage in
return image
})
} else {
artwork = MPMediaItemArtwork(image: image)
}
}
//use artwork here