iphone: играть и приостанавливать песню на определенное время? - PullRequest
0 голосов
/ 22 августа 2011

В моем приложении

воспроизведение песни через AVAudioPlayer,

Теперь я хочу воспроизвести песню на определенное время, а не сделать паузу на определенное время и воспроизвести снова.я могу это сделать?

Ответы [ 2 ]

1 голос
/ 22 августа 2011

Если вы используете AVPlayer вместо AVAudioPlayer, тогда вы можете использовать метод

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

, который будет вызывать блок с установленным интервалом в течение всего времени воспроизведения элемента.Параметр Time, переданный в блок, сообщит вам, как долго текущий элемент воспроизводится.

Поэтому все, что вам нужно сделать, это проверить значение Time и определенноедлина, затем позвоните pause, чтобы остановить игрока.Затем вы можете настроить одноразовый таймер на срабатывание через определенное время для возобновления воспроизведения.

0 голосов
/ 22 августа 2011

Вам необходимо использовать NSTimer и вызывать метод через определенный промежуток времени. Итак, сделайте два метода, pause: и play :, например

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

и затем вызовите этот метод, используя запланированное время после заданного периода времени, например:

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

так что в этом случае через 3 секунды будет вызываться пауза в 'self'.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...