tvOS: обнаружение нажатия кнопки паузы

Я пытаюсь определить, когда пользователь нажимает кнопку воспроизведения/паузы на пульте дистанционного управления. Я создал распознаватель жестов касания и прикрепил его к представлению подкласса AVPlayerViewController.

    UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(togglePlayPause:)];
    tapGestureRecognizer.allowedPressTypes = @[@(UIPressTypePlayPause)];
    [self.view addGestureRecognizer:tapGestureRecognizer];


- (void)togglePlayPause:(UITapGestureRecognizer *)tapGestureRecognizer
{
    NSLog(@"Toggle play/pause");
    if ([self playing])
    {
        NSLog(@"    Pause");
        [self.player pause];
    }
    else
    {
        NSLog(@"    Play");
        [self.player play];
    }
}

Жест срабатывает нормально, когда нажата кнопка «воспроизведение», но не срабатывает, когда нажата кнопка «пауза». Есть идеи, почему?


person Chris Horsfield    schedule 24.05.2016    source источник
comment
Вот как вы это делаете: Как обнаружить нажатие кнопки Apple TV Siri Remote?. Отредактируйте свой вопрос, чтобы включить функцию togglePlayPause:. Я бы подумал, что это проблема.   -  person Daniel Storm    schedule 25.05.2016
comment
Нет. Функция даже не вызывается при нажатии кнопки паузы.   -  person Chris Horsfield    schedule 25.05.2016
comment
Обратите внимание на : в своем togglePlayPause. Ваша функция принимает аргумент?   -  person Daniel Storm    schedule 25.05.2016
comment
Да, он возвращает распознаватель жестов   -  person Chris Horsfield    schedule 25.05.2016