在目标c中,我一直使用这样的代码来更新MPNowPlayingInfoCenter:
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:
@{ MPMediaItemPropertyArtist : @"Artist!",
MPMediaItemPropertyTitle : @"Title! }];但在Swift中,"setNowPlayingInfo“函数似乎不被识别:
MPNowPlayingInfoCenter.defaultCenter().... // Can't identify 'setNowPlayingInfo()'我遗漏了什么吗?
发布于 2014-06-17 18:58:45
在Swift中,getter/setter的工作方式不同。由于不再有类似于ObjC的属性,所以没有自动生成的设置器/getter。您应该直接访问变量。
在您的情况下,请使用:
MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = [MPMediaItemPropertyArtist : "Artist!", MPMediaItemPropertyTitle : "Title!"]发布于 2015-10-10 00:37:12
Swift 2,这也适用于:
let songInfo: [String:AnyObject] = [
MPMediaItemPropertyTitle: mySoundTrack.TrackName,
MPMediaItemPropertyArtist: String(mySoundTrack.TrackID),
MPMediaItemPropertyArtwork: albumArt
]
MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = songInfo发布于 2017-07-04 15:47:57
“Jack”之前的回答不再是原来的样子,需要做一些修改。
Swift 3编译器抱怨2件事。
defaultCenter()已改名为default()。因此,一个可行的代码如下所示:
MPNowPlayingInfoCenter.default().nowPlayingInfo = [MPMediaItemPropertyArtist : "Artist!" as AnyObject, MPMediaItemPropertyTitle : "Title!" as AnyObject]https://stackoverflow.com/questions/24270973
复制相似问题