iOS 13 Голосовое управление UIScrollView - PullRequest
0 голосов
/ 07 января 2020

Функция iOS13 Voice Control имеет команду «Прокрутить вниз». Эта команда работает для UITableViews, но, похоже, не работает для UIScrollViews с прокручиваемым содержимым.

  1. Это предназначено?
  2. Намерено или нет, есть ли способ включить эту команду для работы на UIScrollView?

Пример: UILabel с большим количеством текста внутри UIScrollView (ограничения корректны - он прокручивается и подтверждается Voice Over говоря «Страница 1 из 3», когда активен)

enter image description here

1 Ответ

0 голосов
/ 07 января 2020

Эта команда работает для UITableViews, но, похоже, не работает для UIScrollViews с прокручиваемым контентом.

... только если это контент огромного UILabel-контента, который должен прокручиваться: добавить многие другие элементы (ползунки, кнопки ...) , и вы заметите, что прокрутка включена.

Об этом в TextKit Best Practices (WWD 2018 C видео) , настоятельно рекомендуется использовать UITextView для этой цели: enter image description here

Есть ли способ включить эту команду для работы с UIScrollView?

Переключите метку и представление прокрутки для текстового представления вместо , чтобы функция голосового управления работала с указанными вами c use case.

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

Я тестировал с помощью кнопки и огромного UILabel, как вы сделали: enter image description here

  1. Scroll down, который работал до конца моего ярлыка.
  2. Scroll up, который никогда не работает.

Кажется, что ярлык - это своего рода пустое поле, которое Voice Control игнорирует при просмотре прокрутки: включите эту команду в представлении прокрутки, просто замените вашу метку текстовым представлением .
Теперь, если ваш сценарий использования представляет собой один UILabel в UIScrollView, удалите их в для отображения UITextView вместо.

РЕДАКТИРОВАТЬ
Вот снимок экрана Xcode, чтобы заставить прокрутку UITextView работать с функцией VoiceControl: enter image description here

... с результатами ниже: enter image description here

Как вы можете заметить, это просто пустой проект с простым текстовым представлением: iOS распознает этот единственный элемент и действует по желанию, когда Scroll down и Scroll up озвучены.

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