Введение во взаимодействие
Взаимодействие пользователей в приложении Windows — это сочетание источников ввода и вывода (например, мыши, клавиатуры, пера, сенсорного ввода, сенсорной панели, речи, Кортаны, контроллера, жестов, взгляда и т. д.), а также различных режимов или модификаторов, которые обеспечивают расширенные возможности (включая колесико и кнопки мыши, ластик пера и концевые кнопки, сенсорную клавиатуру и фоновые службы приложения).
UWP использует "интеллектуальную" контекстную систему взаимодействия, которая в большинстве случаев устраняет необходимость индивидуально обрабатывать уникальные типы входных данных, полученные приложением. Это включает обработку ввода с сенсорного экрана, сенсорной панели, мыши и пера как универсальные типы указателей для поддержки статических жестов, таких как касание или удержание, а также манипулятивных жестов, например, слайд для перелистывания, или рисование цифровыми чернилами.
Ознакомьтесь с каждым типом входного устройства и его поведением, возможностями и ограничениями при паре с определенными форм-факторами. Это может помочь вам решить, достаточно ли платформенные элементы управления и возможности для вашего приложения или нужно предоставить настраиваемые возможности взаимодействия.
взгляд
Для обновления Windows 10 за апрель 2018 г.мы внедрили поддержку технологии Gaze с помощью устройств слежения за движением глаз и головой.
Заметка
Поддержка аппаратного обеспечения для отслеживания движения глаз была введена в Windows 10 Fall Creators Update вместе с функцией управления с помощью глаз, встроенной возможностью, которая позволяет использовать глаза для управления указателем на экране, набора текста на экранной клавиатуре и общения с людьми с использованием технологии преобразования текста в речь.
Поддержка устройств
- Таблетка
- Компьютеры и ноутбуки
Типичное использование
Отслеживайте взгляд пользователя, внимание и присутствие на основе расположения и перемещения глаз. Этот мощный новый способ использования и взаимодействия с приложениями Windows особенно полезен в качестве вспомогательной технологии для пользователей с нейро-мышечной болезнью (например, ALS) и другими ограниченными возможностями, связанными с нарушениями мышц или нервных функций. Ввод взгляда также предоставляет убедительные возможности для игр (включая наведение на цель и отслеживание) и традиционных приложений для повышения производительности, киосков и других интерактивных сценариев, где традиционные устройства ввода (клавиатура, мышь, сенсорный экран) недоступны или где может быть полезно освободить руки пользователя для других задач, например, для удерживания сумок с покупками.
Дополнительные сведения
взаимодействие с глазами и отслеживание взгляда
Surface Dial
Для юбилейного обновления Windows 10мы представили категорию устройств ввода «Колесо Windows». Surface Dial является первым в этом классе устройства.
Поддержка устройств
- Таблетка
- Компьютеры и ноутбуки
Типичное использование
При использовании форм-фактора, основанного на повороте (или жесте), Surface Dial предназначено в качестве дополнительного многомодального входного устройства, которое дополняет или изменяет входные данные с первичного устройства. В большинстве случаев устройство управляется недоминантной рукой пользователя при выполнении задачи доминирующей рукой (например, написанием с помощью ручки).
Дополнительные сведения
Руководство по разработке Surface Dial
Кортана
В Windows 10 расширяемость Cortana позволяет обрабатывать голосовые команды пользователя и запускать ваше приложение для выполнения отдельного действия.
Поддержка устройств
- Телефоны и фаблеты
- Таблетка
- Компьютеры и ноутбуки
- Surface Hub
- IoT
- Xbox
- HoloLens
Типичное использование
Голосовая команда — это одно высказывание, определенное в файле определения голосовой команды (VCD), направленное на установленное приложение с помощью Кортаны. Приложение можно запустить на переднем плане или в фоновом режиме в зависимости от уровня и сложности взаимодействия. Например, голосовые команды, требующие дополнительного контекста или ввода пользователей, лучше всего обрабатываются на переднем плане, а основные команды можно обрабатывать в фоновом режиме.
Интеграция основных функций приложения и предоставление центральной точки входа для пользователя для выполнения большинства задач, не открывая приложение напрямую, позволяет Кортана стать связью между приложением и пользователем. Во многих случаях это может сэкономить значительное время и усилия пользователя. Для получения дополнительной информации см. дизайнерские рекомендации по Кортане.
Дополнительные сведения
рекомендации по проектированию Кортаны
Речь
Речь — это эффективный и естественный способ взаимодействия людей с приложениями. Это простой и точный способ общения с приложениями, и позволяет людям эффективно работать и оставаться в курсе различных ситуаций.
Речь может дополнять или во многих случаях быть основным типом входных данных в зависимости от устройства пользователя. Например, устройства, такие как HoloLens и Xbox, не поддерживают традиционные типы ввода (помимо программной клавиатуры в определенных сценариях). Вместо этого они полагаются на входные и выходные данные речи (часто в сочетании с другими не традиционными типами входных данных, такими как взгляд и жест) для большинства взаимодействий с пользователем.
Текст в речь (также известный как TTS или синтез речи) используется для информирования или направления пользователя.
Поддержка устройств
- Телефоны и фаблеты
- Таблетка
- Компьютеры и ноутбуки
- Surface Hub
- IoT
- Xbox
- HoloLens
Типичное использование
Существует три режима взаимодействия с речью:
Естественный язык
Естественный язык — это то, как мы регулярно взаимодействуем с людьми. Наша речь варьируется от человека к человеку и от ситуации к ситуации, и обычно бывает понятна. Если это не так, мы часто используем разные слова и порядок слов, чтобы донести одну и ту же идею.
Взаимодействие естественного языка с приложением аналогично: мы говорим с приложением через наше устройство, как если бы это был человек и ожидает, что он будет понимать и реагировать соответствующим образом.
Естественный язык — это наиболее продвинутый режим взаимодействия с речью, который может быть реализован и предоставлен посредством Кортаны.
управление и контроль
Команда и управление — это использование словесных команд для активации элементов управления и функций, таких как нажатие кнопки или выбор элемента меню.
Так как команда и управление критически важны для успешного взаимодействия с пользователем, один тип ввода обычно не рекомендуется. Речь обычно является одним из нескольких вариантов ввода для пользователя на основе их предпочтений или аппаратных возможностей.
диктовки
Самый простой метод ввода речи. Каждое высказывание преобразуется в текст.
Диктовка обычно используется, если приложению не нужно понимать смысл или намерение.
Дополнительные сведения
рекомендации по проектированию речи
Ручка
Перо (или стилус) может служить устройством с точностью до пикселя, как мышь, и является оптимальным устройством для цифрового ввода чернил.
Примечание Существует два типа устройств пера: активные и пассивные.
- Пассивные пера не содержат электронику и эффективно эмулируют сенсорный ввод от пальца. Для них требуется базовый дисплей устройства, который распознает входные данные на основе давления контакта. Поскольку пользователи часто кладут руку на поверхность ввода во время письма, данные могут быть искажены из-за неудачного срабатывания функции игнорирования ладони.
- Активные ручки содержат электронику и могут работать со сложными дисплеями устройств, чтобы обеспечить гораздо более обширные входные данные (включая наведение и данные о приближении) в систему и ваше приложение. Отклонение пальмы гораздо надежнее.
Когда мы говорим об устройствах пера, мы имеем в виду активные стилусы, которые предоставляют подробные входные данные и используются в первую очередь для точного рукописного ввода и наведения.
Поддержка устройств
- Телефоны и фаблеты
- Таблетка
- Компьютеры и ноутбуки
- Surface Hub
- IoT
Типичное использование
Платформа рукописного ввода Windows вместе с пером предоставляет естественный способ создания рукописных заметок, рисунков и заметок. Платформа поддерживает запись рукописных данных из входных данных дигитайзера, создание рукописных данных, отрисовку данных в виде росчерков рукописного ввода на выходном устройстве, управление данными рукописного ввода и распознавание рукописного ввода. Помимо захвата пространственных движений пера как пользователь пишет или рисует, ваше приложение также может собирать такие сведения, как давление, форма, цвет и непрозрачность, чтобы предложить пользователям взаимодействие, которое тесно напоминает рисование на бумаге с пером, карандашом или кистью.
Отличие ввода пера от сенсорного ввода заключается в способности сенсорного ввода эмулировать прямое воздействие на элементы пользовательского интерфейса на экране через физические жесты, выполняемые на этих объектах (такие как проведение, скольжение, перетаскивание, поворот и т. д.).
Для поддержки этих взаимодействий необходимо предоставить команды пользовательского интерфейса, специфичные для пера, или другие средства. Например, используйте кнопки "предыдущая" и "следующая" (или + и -), чтобы пользователи перелистывали страницы содержимого, а также вращали, изменяли размер и увеличивали объекты.
Дополнительные сведения
Руководство по проектированию ручки
Трогать
При касании физические жесты с одного или нескольких пальцев можно использовать либо для эмуляции прямых манипуляций с элементами пользовательского интерфейса (например, сдвига, поворота, изменения размера или перемещения), в качестве альтернативного метода ввода (аналогично мыши или перу), либо в качестве дополнительного метода ввода (для изменения аспектов других входных данных, таких как смещание росчерка рукописного ввода, рисуемого пером). Тактильные интерфейсы, такие как это может обеспечить более естественные, реальные ощущения для пользователей, так как они взаимодействуют с элементами на экране.
Поддержка устройств
- Телефоны и фаблеты
- Таблетка
- Компьютеры и ноутбуки
- Surface Hub
- IoT
Типичное использование
Поддержка сенсорного ввода может значительно отличаться в зависимости от устройства.
Некоторые устройства не поддерживают касание вообще, некоторые устройства поддерживают один сенсорный контакт, а другие поддерживают несколько контактов (два или более контактов).
Большинство устройств, поддерживающих мультитач-ввод, обычно распознают десять уникальных одновременных контактов.
Устройства Surface Hub распознают 100 уникальных одновременных сенсорных контактов.
В общем, прикосновение — это:
- Один пользователь, если не используется с устройством Microsoft Team, например Surface Hub, где подчеркивается совместная работа.
- Не ограничивается ориентацией устройства.
- Используется для всех взаимодействий, включая ввод текста (сенсорной клавиатуры) и рукописный ввод (настроенное приложением).
Дополнительные сведения
Руководства по проектированию интерфейсов для сенсорного управления
Сенсорный панель
Сенсорная панель объединяет как косвенное мультитач-введение, так и точное введение, характерное для указательного устройства, например мыши. Это сочетание делает сенсорную панель подходящей как для интерфейсов, оптимизированных для сенсорного ввода, так и для небольших целевых элементов приложений производительности.
Поддержка устройств
- Компьютеры и ноутбуки
- IoT
Типичное использование
Сенсорные панели обычно поддерживают набор жестов сенсорного ввода, которые обеспечивают поддержку сенсорного ввода для прямого управления объектами и пользовательским интерфейсом.
Из-за этой конвергенции взаимодействий, поддерживаемых сенсорными панелями, мы рекомендуем также предоставлять команды пользовательского интерфейса в стиле мыши или методы взаимодействия, вместо того чтобы полагаться исключительно на поддержку сенсорного ввода. Предоставьте команды, специфичные для сенсорной панели, или элементы интерфейса для поддержки этих взаимодействий.
Для поддержки этих взаимодействий следует предоставить команды пользовательского интерфейса, связанные с мышью, или возможности использования. Например, используйте кнопки "предыдущая" и "следующая" (или + и -), чтобы пользователи могли перелистывать страницы содержимого, а также поворачивать, изменять размер и масштабировать объекты.
Дополнительные сведения
рекомендации по проектированию сенсорной панели
Клавиатура
Клавиатура является основным устройством ввода для текста и часто является обязательным для людей с определенными ограниченными возможностями или пользователями, которые считают его более быстрым и эффективным способом взаимодействия с приложением.
Поддержка устройств
- Телефоны и фаблеты
- Таблетка
- Компьютеры и ноутбуки
- Surface Hub
- IoT
- Xbox
- HoloLens
Типичное использование
Пользователи могут взаимодействовать с универсальными приложениями Windows с помощью аппаратной клавиатуры и двух программных клавиатур: экранной клавиатуры (OSK) и сенсорной клавиатуры.
OSK — это визуальная, программная клавиатура, которую можно использовать вместо физической клавиатуры для ввода данных с помощью сенсорного экрана, мыши, пера или другого указывающего устройства (сенсорный экран не требуется). OSK предоставляется для систем, не имеющих физической клавиатуры, или для пользователей, чьи нарушения мобильности препятствуют использованию традиционных физических устройств ввода. OSK эмулирует большую часть, если не все, функциональные возможности аппаратной клавиатуры.
Сенсорная клавиатура — это визуальная, программная клавиатура, используемая для ввода текста через сенсор. Сенсорная клавиатура не является заменой OSK, так как она используется только для ввода текста (она не эмулирует аппаратную клавиатуру) и отображается только в том случае, если текстовое поле или другой редактируемый текстовый элемент управления получает фокус. Сенсорная клавиатура не поддерживает команды приложений или системы.
Примечание Экранная клавиатура (OSK) имеет приоритет над сенсорной клавиатурой, которая не будет отображаться, если присутствует экранная клавиатура.
Как правило, клавиатура:
- Один пользователь.
- Не ограничивается ориентацией устройства.
- Используется для ввода текста, навигации, игрового процесса и доступности.
- Всегда доступен как проактивно, так и реактивно.
Дополнительные сведения
руководства по проектированию клавиатуры
Мышь
Мышь лучше всего подходит для продуктивных приложений и интерфейса с высокой плотностью элементов, где взаимодействие с пользователем требует точности на уровне пикселей для наведения и управления.
Поддержка устройств
- Телефоны и фаблеты
- Таблетка
- Компьютеры и ноутбуки
- Surface Hub
- IoT
Типичное использование
Входные данные мыши можно изменить с добавлением различных клавиш клавиатуры (CTRL, SHIFT, ALT и т. д.). Эти клавиши можно объединить с левой кнопкой мыши, правой кнопкой мыши, кнопкой колеса и кнопками X для расширенного набора команд, оптимизированных для мыши. (Некоторые устройства мыши Microsoft имеют две дополнительные кнопки, называемые кнопками X, которые, как правило, используются для перемещения назад и вперед в веб-браузерах).
Как и в случае с электрическим пером, различие между вводом с помощью мыши и сенсорным вводом заключается в способности сенсорного ввода эмулировать прямое взаимодействие с элементами пользовательского интерфейса на экране через физические жесты, выполняемые с этими объектами (например, свайп, скольжение, перетаскивание, вращение и так далее).
Для поддержки этих взаимодействий следует предоставить команды пользовательского интерфейса, специфичные для мыши, или элементы управления. Например, используйте кнопки "предыдущий" и "следующий" (или + и -), чтобы пользователи могли перелистывать страницы содержимого, а также вращать, изменять размер и масштабировать объекты.
Дополнительные сведения
руководства по проектированию мыши
Жест
Жест — это любая форма перемещения пользователей, распознаваемая как входные данные для управления или взаимодействия с приложением. Жесты принимают много форм, от простого использования руки, чтобы указать на что-то на экране, до конкретных, освоенных шаблонов движения, до длительных непрерывных движений всего тела. Будьте осторожны при разработке пользовательских жестов, так как их смысл может отличаться в зависимости от локальных и культурных особенностей.
Поддержка устройств
- Компьютеры и ноутбуки
- IoT
- Xbox
- HoloLens
жест
Типичное использование
События статических жестов запускаются после завершения взаимодействия.
- События статических жестов включают Tapped, DoubleTapped, RightTapped и Holding.
События манипуляционных жестов обозначают процесс текущего взаимодействия. Они начинают срабатывать, когда пользователь прикасается к элементу, и продолжаются до тех пор, пока пользователь не поднимет пальцы или манипуляция не будет отменена.
События манипуляции включают мультитач взаимодействия, такие как масштабирование, сдвиг или поворот, а также взаимодействия, использующие инерцию и скорость, такие как перетаскивание. (Информация, предоставляемая событиями манипуляции, не определяет взаимодействие, а предоставляет такие данные, как положение, разность перевода и скорость.)
События указателя, такие как PointerPressed и PointerMoved, предоставляют низкоуровневые сведения для каждого сенсорного контакта, включая движение указателя и возможность различать события нажатия и отпускания.
Из-за конвергенции опыта взаимодействия, поддерживаемого Windows, мы рекомендуем также предоставлять команды пользовательского интерфейса в стиле мыши или элементы управления, а не полагаться исключительно на поддержку сенсорного ввода. Например, кнопки «Назад» и «Вперёд» (или + и -) позволяют пользователям перелистать страницы содержимого, а также поворачивать, изменять размер и масштабировать объекты.
Геймпад или контроллер
Геймпад или контроллер — это высоко специализированное устройство, обычно выделенное для игр. Однако он также используется для эмуляции основного ввода с клавиатуры и обеспечивает навигацию по интерфейсу, очень похожую на использование клавиатуры.
Поддержка устройств
- Компьютеры и ноутбуки
- IoT
- Xbox
Типичное использование
Играйте в игры и взаимодействуйте со специализированной консолью.
Несколько входных данных
Обеспечение максимально возможного количества пользователей и устройств, а также проектирование приложений для работы с максимальным числом типов ввода данных (жест, речь, сенсорный ввод, тачпад, мышь и клавиатура) обеспечивает гибкость, удобство использования и доступность.
Поддержка устройств
- Телефоны и фаблеты
- Таблетка
- Компьютеры и ноутбуки
- Surface Hub
- IoT
- Xbox
- HoloLens
Типичное использование
Так же, как люди используют сочетание голоса и жеста при взаимодействии друг с другом, при взаимодействии с приложением также может быть полезно несколько типов и режимов ввода. Однако эти объединенные взаимодействия должны быть как можно более понятными и естественными, так как они также могут создать очень запутанный интерфейс.
Windows developer