6

目標 c では、次のようなコードを使用して MPNowPlayingInfoCenter を更新しました。

[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo: 
    @{ MPMediaItemPropertyArtist : @"Artist!",
        MPMediaItemPropertyTitle : @"Title! }];

しかし、Swift では、関数「setNowPlayingInfo」が認識されていないようです。

MPNowPlayingInfoCenter.defaultCenter()....  // Can't identify 'setNowPlayingInfo()'

足りないものはありますか?

4

3 に答える 3

5

Swift では、ゲッター/セッターの動作が異なります。ObjC のようなプロパティはもうないので、自動的に生成されるセッター/ゲッターはありません。変数に直接アクセスするだけです。

あなたの場合、次を使用します。

MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = [MPMediaItemPropertyArtist : "Artist!",  MPMediaItemPropertyTitle : "Title!"]
于 2014-06-17T18:58:45.597 に答える
1

Swift 2、これも機能します:

let songInfo: [String:AnyObject] = [
         MPMediaItemPropertyTitle: mySoundTrack.TrackName,
         MPMediaItemPropertyArtist: String(mySoundTrack.TrackID),
         MPMediaItemPropertyArtwork: albumArt
]

MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = songInfo
于 2015-10-10T00:37:12.507 に答える