Дважды нажмите и удерживайте ползунок закадрового голоса iOS, но для пользовательского просмотра

Я создал пользовательское представление, которое действует как UISlider — есть «дорожка» и дескриптор для «захвата», чтобы изменить значение. По определенным причинам я не могу просто сделать его подклассом UISlider. Я пытаюсь сделать этот слайдер максимально доступным с помощью VoiceOver. У меня есть accessibilityIncrease и accessibilityDecrease в моем пользовательском представлении, которые обрабатывают single finger drag up и single finger drag down. Это изменяет значение ползунка на 10% за раз.

Однако я хотел бы разрешить более точное управление, как ползунок без VoiceOver. По умолчанию UISlider имеет double tap and hold, и вы можете перетаскивать ползунок вверх/вниз, чтобы «панорамировать» ползунок. Я хотел бы добавить именно это в свой собственный вид, но я не могу найти правильное заклинание для обработки жеста double tap and hold.

Могу ли я что-нибудь сделать, чтобы имитировать жест double tap and hold из UISlider в моем пользовательском представлении?

Большое спасибо!!!


person Hoopes    schedule 28.02.2019    source источник


Ответы (1)


Если вы хотите реализовать такой новый жест для пользователей VoiceOver, просто забудьте об этом.

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

Я не думаю, что это хорошая идея, чтобы попытаться внедрить новые жесты VoiceOver в приложение, потому что у его пользователей есть свои привычки, и они могут быть полностью потеряны с вашим пользовательским управлением, если они не могут справиться с этим, если вы не добавите hint для объяснения, но это определенно не то, что я рекомендую в любом случае.

В противном случае вы можете взглянуть на pass through концепция, представленная в видео What's New in Accessibility WWDC 2017, в котором рассматривается та же идея, но для жеста панорамирования...

person XLE_22    schedule 28.02.2019
comment
У вас есть дополнительная информация о функции сквозного доступа? Вроде именно этого я и хочу - передать жест панорамирования на сам вид. Это будет стирать ползунок так же, как обычный UISlider, верно? Я нигде не могу найти примеры этой функции в Swift. Очень признателен! - person Hoopes; 28.02.2019
comment
Большое спасибо - я наткнулся и заставил себя использовать UISlider. Жаль, что альтернатива оказалась такой сложной. Цените свое время и помогайте! - person Hoopes; 01.03.2019