audio – 向前跳30秒
我有一个audio播放器播放从核心date检索的audio。 播放和暂停工作正常。 我试图实现一个“跳转30秒”button,并寻求任何指针,我将如何去做。
代码为我的“播放/暂停”button
@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))" } }
这样的事情呢?
@IBAction func skipForward30SecondsPressed(sender: AnyObject) { var currentTime = audioPlayer.currentTime audioPlayer.stop() audioPlayer.playAtTime(currentTime + 30.0) // plus 30 seconds }
对于iOS我们需要使用CMTime。 只有CMTime可以被馈送给玩家以从当前位置向前或向后跳转。 现在,如果玩家正在运行任何stream,则当前stream位置可以使用玩家的currentTime属性。
祝你好运。 如果您有任何进一步的问题,请告诉我。
获取玩家的当前时间,并加上当前时间的30秒。然后让玩家在当前时间(当前时间+30)播放。
var currentTime = player.currentTime player.playAtTime(currentTime + 30.0)
如果你想使用滑块来改变当前时间,你可以使用player.currentTime = TimeInterval(slider.value) * player.duration
来获取它。
在迅速3 :
player.play() player.currentTime=60
第二个单位根本不需要停下来