animateWithDuration: задержка: параметры: анимации: завершение: блокирование пользовательского интерфейса при использовании с UIViewAnimationOptionRepeat |UIViewAnimationOptionAutoreverse - PullRequest
9 голосов
/ 24 января 2012

Я запускаю функцию для выдачи значка воспроизведения:

- (void)pulsePlayIcon {
    if ([self isPlaying]) {
        return;
    }

    [[self videoView] playIcon].hidden = NO;
    [[self videoView] playIcon].alpha = 1.0;

    [UIView animateWithDuration:[self playIconPulseDuration] 
                          delay:[self playIconPulseTimeInterval] 
                        options:(UIViewAnimationOptionRepeat | UIViewAnimationOptionAutoreverse) 
                     animations:^{
                         [[self videoView] playIcon].alpha = 0.8;
                     } 
                     completion:^(BOOL completed) {}];
}

Это прекрасно работает в iOS 5.0, но в 4.3 блокирует пользовательский интерфейс.Пользовательский интерфейс не отвечает.Я читал, что это был предложенный способ сделать повторяющиеся анимации в iOS версии 4.0 или выше (> = 4.0).Виновник, кажется, UIViewAnimationOptionRepeat.Вы видите какие-то очевидные ошибки, которые я делаю?

1 Ответ

11 голосов
/ 25 января 2012

Скорее всего, вы должны включить UIViewAnimationOptionAllowUserInteraction.

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