2017-07-26 88 views
-1

我做这个更新控制中心中的专辑封面:转换MPMediaItemArtwork从iOS的10到iOS 9

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

您是否正在寻找? https://developer.apple.com/documentation/mediaplayer/mpmediaitemartwork/1621747-init – dfd

回答

0

在iOS 10之前,除了简单的init()之外,MPMediaArtwork的初始化程序为init(image:)

+0

好吧,但我需要创建一个变量'艺术品'。我尝试做'var artwork = MPMediaItemArtwork()',但我不能这样做,因为'init()是不可能的'任何想法? –

+0

让我直说。我说初始化器是'init(image:)'。你没有尝试过,而且你在抱怨你_did_尝试不起作用。真? – matt

+0

我确实尝试过。问题是我需要一个用于'艺术品'的变量。所以,我的代码需要是'artwork = MPMediaItemArtwork(image:image)'。 –

相关问题