2016-11-25 2 views
1

2つの異なる再生オーディオを同時に停止するにはどうしたらいいですか?音楽が再生されているときに、別のボタンを押して同時に再生しています。私の英語のために申し訳ありません。2つの異なる演奏音声を同時に止めるにはどうしたらいいですか?

NoiseMaker

import AVFoundation 

class NoiseMaker { 
    let audioFileNames = ["guitar", "applause", "monster", "bubbles"] 
    let players: [AVAudioPlayer?] 

    init() { 
     players = audioFileNames.map { filename in 
      if let url = NSBundle.mainBundle().URLForResource(filename, withExtension: "wav") { 
       return try? AVAudioPlayer(contentsOfURL: url) 
      } else { 
       return nil 
      } 
     } 
    } 

    func play(index: Int) { 
     if !players.isEmpty && index >= 0 && index < players.count { 
      players[index]?.play() 
     } 
    } 
} 

ViewController

import UIKit 

class ViewController: UIViewController { 
    let noiseMaker = NoiseMaker() 

    @IBAction func playSound(sender: UIButton) { 
     noiseMaker.play(sender.tag) 
    } 
} 
+4

コードにリンクを投稿したり、コードタグを使用したり、あなたのコードを質問に入れたりしないでください。 –

答えて

0

現在再生中のサウンドのインスタンス変数を追加します。ボタンをタップすると、現在再生中のサウンドに停止メッセージを送信し、新しいサウンドをインスタンス変数にコピーして、そのサウンド再生を開始します。

+0

私はそれをしなかった –

+0

"私はそれをやっていない。それはどういう意味ですか?あなたは私が提案したものを試していない?あなたはそれを試しましたが、それを働かせることができませんでしたか? –

+0

私は実行できません。私は実現のために弱いです –

関連する問題