0

私は複数の を持っておりAVPlayers、それぞれが別々UIViewControllersの曲を演奏しています。別のものを再生するたびに、
1 つを一時停止する必要があります(そうしないと、オーディオがオーバーラップします)。 音楽がバックグラウンドで再生されている間、ユーザーがアプリを通過できるようにしたいので、onを一時停止しても機能しません。 それぞれの個別のコントロールにアクセスする最良の方法は何ですか?AVPlayer
AVPlayerviewDidDisappear:(BOOL)animated
AVPlayer

4

2 に答える 2

1

私の意見では、AVPlayer が 1 つしかないシングルトンは、この問題をうまく解決します。このようにして、別の曲を再生するには、前の曲を停止する必要があることが保証されます。次に、その AVPLayerSingleton には、avPlayer というプライベート プロパティがあります。次の 2 つの方法を定義できます。

- (void)createPlayerWithSong:(NSString *)currentSong;
- (void)destroyPlayer

次に、createPlayerWithSong で、avPlayer が既に作成されているかどうかを確認して破棄し、新しい曲ごとに新しいものを作成できます。

于 2013-11-05T18:19:38.207 に答える