2011-08-22 62 views

回答

0

您需要使用NSTimer並在給定時間段後調用方法。因此,使兩種方法,暫停:和播放:,例如

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

,然後給定的時間段像這樣調用後使用計劃的時間這個方法:

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

所以在這種情況下, 3秒後,暫停將在'自我'中被調用。

1

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

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

這將調用該塊設定的時間間隔,只要該項目被播放。傳遞給該塊的參數Time會告訴您當前項目已播放多久。

因此,您需要做的只是測試Time的值,如果它是一定的長度,則請致電pause停止播放器。然後,您可以設置一次性定時器,在一段時間後重新開始播放。