car*_*onr 12 ios mpnowplayinginfocenter swift ios10
Apple已在iOS 10中弃用了init(image:)方法MPMediaItemArtwork.新的替代方案是什么.
该类显示接口显示以下方法,以便在新的OS版本中可用
public init(boundsSize: CGSize, requestHandler: @escaping (CGSize) -> UIImage)
Run Code Online (Sandbox Code Playgroud)
有谁知道如何使用它?
问题2,上一个问题的一部分:现在使用MPNowPlayingInfoCenter模拟器中的工作显示锁屏和控制中心的元数据吗?
Vir*_*sio 29
您可以使用以下代码:
let image = UIImage(named: "logo")!
let artwork = MPMediaItemArtwork.init(boundsSize: image.size, requestHandler: { (size) -> UIImage in
return image
})
Run Code Online (Sandbox Code Playgroud)
并且,是的,"正在播放"元数据显示在模拟器中的控制中心.
我在想同样的事情,最终找到了苹果对此的解释。
他们说,当请求处理程序时,我们不应该在图像上进行任何昂贵的调整大小操作,而只是从您已经可以使用的图像中返回最匹配的图像。
以下WWDC 2017视频是他们提到的地方。这是关于tvOS的,但至少我们有一些见识。从07:20开始:https : //developer.apple.com/videos/play/wwdc2017/251/? time = 440
| 归档时间: |
|
| 查看次数: |
5344 次 |
| 最近记录: |