我尝试将动作链接到相同的按钮,但这将使按钮完全停止工作。如果创建一个单独的按钮,我可以使用相同的代码来使其工作:
@IBAction func Play(sender: AnyObject) {
SoundPlayer.play()
}
@IBAction func stop(sender: AnyObject) {
SoundPlayer.stop()
}
我还需要音频循环播放。
使用Nirav代码:
class ViewController: UIViewController {
var SoundPlayer:AVAudioPlayer = AVAudioPlayer()
@IBOutlet var btnPlay: UIButton!
@IBOutlet var btnStop: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
let FileLocation = NSBundle.mainBundle().pathForResource("Aspirin", ofType: ".mp3")
do {
SoundPlayer = try AVAudioPlayer(contentsOfURL: NSURL(fileURLWithPath: FileLocation!))
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryAmbient)
try AVAudioSession.sharedInstance().setActive(true)
}
catch {
print(error)
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBAction func btnTap(sender: UIButton) {
if (sender == self.btnPlay) {
}
else if (sender == self.btnStop) {
}
}
}
1-故事板的屏幕截图
您可以这样创建IBOutlet
两个按钮
@IBOutlet var btnPlay: UIButton!
现在将此动作绑定到两个按钮
@IBaction func btnTap(sender: UIButton) {
if (!sender.selected) {
SoundPlayer.play()
}
else {
SoundPlayer.stop()
}
sender.selected = !sender.selected
}
希望能帮到你
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句