1 | initial version |
Here is a sample code:
import AVFoundation
import UIKit
class ViewController: UIViewController {
var audioPlayer: AVAudioPlayer!
@IBOutlet var volumeSlider: UISlider!
override func viewDidLoad() {
super.viewDidLoad()
let musicURL = Bundle.main.url(forResource: "music", withExtension: "mp3")!
do {
audioPlayer = try AVAudioPlayer(contentsOf: musicURL)
audioPlayer.prepareToPlay()
audioPlayer.volume = 0.5
} catch let error {
print("Error: \(error.localizedDescription)")
}
volumeSlider.minimumValue = 0
volumeSlider.maximumValue = 1
volumeSlider.value = 0.5
volumeSlider.addTarget(self, action: #selector(volumeChanged(_:)), for: .valueChanged)
}
@objc func volumeChanged(_ sender: UISlider) {
audioPlayer.volume = sender.value
}
@IBAction func playButtonTapped(_ sender: AnyObject) {
if !audioPlayer.isPlaying {
audioPlayer.play()
}
}
@IBAction func pauseButtonTapped(_ sender: AnyObject) {
if audioPlayer.isPlaying {
audioPlayer.pause()
}
}
}