6

Вопрос очень прост, как включить прокрутку и масштабирование внутри UIScrollView в tvOS?UIScrollView на tvOS

Я пробовал один и тот же код инициализатора из iOS и возвратил прокрутку для focusView var, но ничего не происходит, когда я касаюсь пульта.

Кроме того, я пытался добавить еще один пользовательский UIPanGestureRecognizer к Scrollview и на самом деле она работает, но я не хочу, чтобы обрабатывать сковороду с помощью специального кода, просто использовать один и тот же пан поведение как прошивкой.

Дайте мне знать, спасибо.

ответ

21

Вы можете настроить встроенный жест панорамы, чтобы распознать касания на Siri Remote. Это происходит не автоматически, потому что обычные прокрутки на tvOS не прокручиваются напрямую прикосновениями: они автоматически прокручиваются, когда фокус перемещается между представлениями в прокрутке.

Если вы действительно хотите, чтобы вид прокрутки, чтобы перейти непосредственно от прикосновений, вам нужно добавить UITouchTypeIndirect к allowedTouchTypes из вид свитка panGestureRecognizer:

scrollView.panGestureRecognizer.allowedTouchTypes = @[ @(UITouchTypeIndirect) ]; 

Вы также должны убедиться, что либо сам вид прокрутки является сфокусированным видом или является родителем сфокусированного представления, поскольку все касания с пульта будут начинаться в центре сфокусированного изображения: вам нужно убедиться, что просмотр прокрутки проходит проверку на события работать.

Масштабирование не будет работать, потому что Siri Remote может распознавать только одно касание за раз, поэтому вы не можете сделать жест щепотки на нем.

+0

Но вы не можете увеличить только на тренажере? Как насчет реального Apple Remote? – pascalbros

+0

Масштабирование также не будет работать на реальном пульте. –

+2

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

Смежные вопросы