【问题标题】:SWIFT how to play sound when screen is touchedSWIFT如何在触摸屏幕时播放声音
【发布时间】:2016-10-26 01:49:03
【问题描述】:
如何在屏幕被录音时播放声音?这是我现在拥有的代码,我在其中检查屏幕是否被触摸,然后它会做一些事情......
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
if TapsValid == true {
Score++
if BallRight == true {
BallChange = false
} else {
BallChange = true
}
}
}
【问题讨论】:
标签:
ios
swift
audio
touch
tap
【解决方案1】:
import AVFoundation
/// You **must** keep reference to this...
private var audioPlayer: AVAudioPlayer!
/**
Tap
*/
public func tapSound() -> Void
{
let bundle: NSBundle = NSBundle(forClass: SoundMachine.self)
if let file_url: NSURL = bundle.URLForResource("tap_sounf", withExtension:"caf")
{
self.playSoundFromURL(file_url)
}
}
/**
Reproduce un archivo de sonido que se encuentra
en el Bundle de nuestra app
- parameter resource_url: La URL al archivo
*/
private func playSoundFromURL(resource_url: NSURL) -> Void
{
self.audioPlayer = try! AVAudioPlayer(contentsOfURL:resource_url)
self.audioPlayer.prepareToPlay()
self.audioPlayer.play()
}