Тактильная чувствительность
Тактильность вовлекает людей во взаимодействие с экранными интерфейсами. Например, когда транзакция Apple Pay подтверждена, система воспроизводит тактильные сигналы в дополнение к визуальной и слуховой обратной связи. Тактильность также может улучшать жесты и взаимодействия при касании, т.е. в процессе прокрутки переключателя.

На поддерживаемых моделях iPhone вы можете добавить тактильные эффекты в свое приложение несколькими способами.

  • Используйте стандартные элементы пользовательского интерфейса, такие как переключатели, ползунки и средства выбора, которые по умолчанию воспроизводят системные тактильные ответы Apple.

  • Если уместно, то используйте генератор обратной связи для воспроизведения одного из нескольких предопределенных тактильных шаблонов в категориях уведомления, воздействия и выбора. Руководство разработчика см. в UIFeedbackGenerator.

  • В ситуациях, когда вам необходим больший контроль, создайте и проигрывайте свои собственные тактильные паттерны. Инструкции см. в разделе «Создание пользовательских тактильных шаблонов».
Когда вы используете системные тактильные шаблоны, то iOS управляет силой и способом обратной связи. Например, переключатель автоматически воспроизводит небольшое нажатие, а генератор обратной связи для уведомления об «успехе» воспроизводит схему, показанную ниже. (Руководство разработчика см. В разделе Анимация и тактильность.)
Уведомления

https://developer.apple.com/design/human-interface-guidelines/ios/images/haptics/success.mp4

Успех. Указывает, что задание или действие, такое как сдача чека или разблокировка транспортного средства, завершено.

https://developer.apple.com/design/human-interface-guidelines/ios/images/haptics/warning.mp4

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

https://developer.apple.com/design/human-interface-guidelines/ios/images/haptics/error.mp4

Неудача. Указывает, что задача или действие, такое как сдача чека или разблокировка транспортного средства, потерпело неудачу.
Воздействие

https://developer.apple.com/design/human-interface-guidelines/ios/images/haptics/impact_light.mp4

Легкое. Предоставляет физическую метафору, которая дополняет визуальный опыт. Например, люди могут почувствовать стук, когда вид сдвигается на место, или два объекта сталкиваются.

https://developer.apple.com/design/human-interface-guidelines/ios/images/haptics/impact_medium.mp4

Умеренное. Предоставляет физическую метафору, которая дополняет визуальный опыт. Например, люди могут почувствовать стук, когда вид сдвигается на место, или два объекта сталкиваются.

https://developer.apple.com/design/human-interface-guidelines/ios/images/haptics/impact_heavy.mp4

Тяжелое. Предоставляет физическую метафору, которая дополняет визуальный опыт. Например, люди могут почувствовать стук, когда вид сдвигается на место, или два объекта сталкиваются.

https://developer.apple.com/design/human-interface-guidelines/ios/images/haptics/impact_rigid_sound.mp4

Жесткое. Предоставляет физическую метафору, которая дополняет визуальный опыт. Например, люди могут почувствовать стук, когда вид сдвигается на место, или два объекта сталкиваются.

https://developer.apple.com/design/human-interface-guidelines/ios/images/haptics/impact_soft_sound.mp4

Мягкое. Предоставляет физическую метафору, которая дополняет визуальный опыт. Например, люди могут почувствовать стук, когда вид сдвигается на место, или два объекта сталкиваются.
Выбор

Выбор. Указывает, что выбор активно изменяется. Например, пользователь чувствует легкие удары при прокрутке колесика выбора. Эта обратная связь предназначена для передачи движения через ряд дискретных значений, а не для выбора или его подтверждения.

Независимо от того, используете ли вы предоставленные системой тактильные шаблоны или создаете свои собственные, очень важно использовать их таким образом, чтобы обогатить пользовательский опыт и не отвлекать при этом людей от их целей.
Проектирование тактильности
Разработка интерфейсов, которые включают осязательные чувства, может привнести в ваше приложение чувство общности с физическим миром. Независимо от того, как вы создаете тактильные ощущения в своем приложении, приведенные ниже рекомендации помогут вам создать сгруппированную работу приложения.

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

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

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

Используйте тактильность последовательно. Последовательность в тактильной обратной связи помогает людям развивать тактильные ассоциации между определенными тактильными паттернами и опытом. Например, если ваше приложение воспроизводит определенный тактильный шаблон, когда игровой персонаж не может выполнить миссию, люди учатся ассоциировать этот шаблон с отрицательным результатом. Если вы используете ту же тактильную схему для положительного результата, как для прохождение уровня, люди будут сбиты с толку.

Избегайте чрезмерного использования тактильности. Иногда тактильность хороша, но когда она употребляется слишком часто, люди от этого устают. В общем, избегайте дизайна, в котором слишком много повторяющихся тактильных ответов. Лучший тактильный опыт - тот, который пользователи не осознают.

Обязательно протестируйте тактильность в вашем приложении. Все пользователи имеют разные предпочтения и уровни чувствительности, поэтому вам нужно протестировать тактильность с наибольшим количеством людей.

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

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

Помните, использование тактильных ответов может повлиять на работу пользователей. По своей конструкции тактильные устройства создают достаточно физической силы, чтобы люди чувствовали вибрацию устройства. Убедитесь, что тактильность не нарушает работу пользователя с камерой, гироскопом или микрофоном.
Создание пользовательских тактильных паттернов
Пользовательский тактильный шаблон может заменять следующие вещи: отпускание рогатки, движение по грохочущей полосе и т.д. Пользовательские шаблоны могут постоянно изменяться в зависимости от пользовательского ввода или контекста. Например, влияние, которое испытывают игроки, когда игровой персонаж прыгает с дерева, может быть сильнее, чем когда персонаж прыгает на месте.


В iOS 13 и более поздних версиях Core Haptics предоставляет два основных блока, которые генерируют пользовательские тактильные шаблоны:

  • Временные события, которые являются короткими. Они напоминают прикосновения или импульсы, например, нажатие кнопки «Фонарик» на главном экране.

  • Непрерывные события, которые ощущаются как устойчивые вибрации.

Независимо от того, какой блок вы выберете для создания собственного тактильного элемента, вы также можете контролировать его резкость и интенсивность.
Вы можете думать о резкости как о способе абстрагировать тактильный опыт в форму волны, которая производит соответствующие физические ощущения. Задание резкости позволяет передавать в систему ваши пожелания для тактильного опыта. Например, вы можете использовать значения резкости, чтобы передать ощущение, которое будет мягким, округлым, органическим или четким, точным, механическим. Из этого термина следует, что интенсивность означает силу тактильности.

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