2017-05-16 5 views
2

私のSwift iOS Appでは、すばやく異なるサウンドを再生する必要があります。トリガされた各サウンドは他のすべてのサウンドを停止する必要があるため、一度に1つのサウンドしか再生されません。 は、私は新しいサウンドを開始する前に、すべてのサウンドを停止する1つを除くすべてのアドレス方法

for player in audioPlayerBT{ player.stop()} 
audioPlayerBT[playedNote].numberOfLoops = -1 
audioPlayerBT[playedNote].play() 

を使用しました。それは動作しますが、非常に短い休止があります。私は他の人がそれをより流暢にするのを止める前に、新しい音を始めたいと思います。新しいサウンドを開始した後、それを使用するために

for player in audioPlayerBT{ player.stop()} 

から一つのインデックスを除く

できますか?

答えて

0

あなたが特定のプレーヤーを停止避けるためにしようとしている場合は、考慮してください。

for (index, player) in audioPlayerBT.enumerated() { 
    if index != playedNote { 
     player.stop() 
    } 
} 
+0

をねえ、それは私が必要なもののように見えますが、それは動作しません。 AudioPlayerBT()からdelete()を呼び出すことはできませんが、それがないと、「表現型 '[AVAudioPlayer]'はコンテキストがなくてもあいまいです」 –

+0

@MarcelFriedmann申し訳ありません、何かがスクランブルされていますコピー&ペーストで。もう一度やり直してください。 –

+0

ありがとうございます、あなたはスターです!! –

関連する問題