Wie wird derselbe Sound abgespielt, der sich mit AVAudioPlayer überschneidet?

Dieser Code gibt den Ton wieder, wenn Sie auf die Taste tippen. Wenn Sie die Taste erneut drücken, wird der vorherige Code abgebrochen. Ich möchte nicht, dass dies passiert. Ich möchte, dass sich derselbe Sound bei wiederholtem Drücken überlappt. Ich glaube, es könnte an der Verwendung des gleichen AVAudioPlayer liegen, den ich im Internet gesehen habe, aber ich bin neu darin, schnell zu sein und möchte wissen, wie ich bei jeder Ausführung der Methode einen neuen AVAudioPlayer erstelle, damit sich die Sounds überlappen.

   func playSound(sound:String){


    // Set the sound file name & extension

    let soundPath = NSURL(fileURLWithPath:NSBundle.mainBundle().pathForResource(sound, ofType: "mp3")!)
    do {
        //Preperation
        try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
    } catch _{
    }
    do {
        try AVAudioSession.sharedInstance().setActive(true)
    }
    catch _ {
    }
    //Play the sound
    var error:NSError?
    do{
        audioPlayer = try AVAudioPlayer(contentsOfURL: soundPath)
    }catch let error1 as NSError {
        error = error1
    }

   audioPlayer.prepareToPlay()
  audioPlayer.play()

}

Antworten auf die Frage(2)

Ihre Antwort auf die Frage