iphone:在特定时间播放和暂停歌曲?

问题描述:

在我的应用程序,iphone:在特定时间播放和暂停歌曲?

歌通过AVAudioPlayer玩,

现在我想再次&就玩一首歌比停顿特定的时间特定的时间。

我该怎么做?

您需要使用NSTimer并在给定时间段后调用方法。因此,使两种方法,暂停:和播放:,例如

- (void)pause:(id)sender { 
    [player pause]; 
} 

,然后给定的时间段像这样调用后使用计划的时间这个方法:

[NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(pause:) userInfo:nil repeats:no 

所以在这种情况下, 3秒后,暂停将在'自我'中被调用。

如果您使用的AVPlayer代替AVAudioPlayer那么你可以使用的方法

- (id)addPeriodicTimeObserverForInterval:(CMTime)interval queue:(dispatch_queue_t)queue usingBlock:(void (^)(CMTime time))block 

这将调用该块设定的时间间隔,只要该项目被播放。传递给该块的参数Time会告诉您当前项目已播放多久。

因此,您需要做的只是测试Time的值,如果它是一定的长度,则请致电pause停止播放器。然后,您可以设置一次性定时器,在一段时间后重新开始播放。