我有一个播放从Core Date检索到的音频的音频播放器。 Play&暂停工作。我正在尝试实现一个'Jump Forward 30 Seconds'按钮,并寻求关于我将如何进行的任何指示。
我的“播放/暂停”按钮的代码
@IBAction func playPressed(sender: AnyObject) {
let play = UIImage(named: "play")
let pause = UIImage(named: "pause")
if audioPlayer.playing {
pauseAudioPlayer()
audioPlayer.playing ? "\(playButton.setImage( pause, forState: UIControlState.Normal))" : "\(playButton.setImage(play , forState: UIControlState.Normal))"
}else{
playAudio()
audioPlayer.playing ? "\(playButton.setImage( pause, forState: UIControlState.Normal))" : "\(playButton.setImage(play , forState: UIControlState.Normal))"
}
}
答案 0 :(得分:2)
对于iOS,我们需要使用CMTime。只有CMTime可以送到播放器,以便从当前位置向前或向后跳跃。现在,如果播放器正在运行任何流,则当前流位置可以使用播放器的currentTime属性。
祝你好运。如果您对此有任何疑问,请与我们联系。答案 1 :(得分:2)
在 swift 3 :
player.play()
player.currentTime=60
单位是第二位 根本不需要停止
答案 2 :(得分:1)
这样的事情怎么样?
@IBAction func skipForward30SecondsPressed(sender: AnyObject) {
var currentTime = audioPlayer.currentTime
audioPlayer.stop()
audioPlayer.playAtTime(currentTime + 30.0) // plus 30 seconds
}
答案 3 :(得分:1)
获取玩家的当前时间,并将当前时间加30秒。然后让玩家在当时玩(当前时间+30)。
var currentTime = player.currentTime
player.playAtTime(currentTime + 30.0)
如果您想使用滑块更改当前时间,可以使用player.currentTime = TimeInterval(slider.value) * player.duration
来获取它。