Контекстное меню
В iOS 13 и более поздних версиях вы можете использовать контекстные меню, чтобы дать людям доступ к дополнительным функциональным возможностям, которые связаны с экранными элементами, не перегружая при этом интерфейс.
Контекстные меню похожи на Peek и Pop, но имеют два ключевых отличия:

  • Контекстные меню доступны на всех устройствах под управлением iOS 13 и выше; Peek и Pop доступны только на устройствах, поддерживающих 3D Touch.
  • Контекстные меню сразу же отображают контекстные команды; для просмотра команд Peek и Pop требуется смахивание вверх.
Для отображения контекстного меню можно использовать системный сенсорный ввод и выполнять жест удержания или 3D-сенсорный ввод (3D-сенсорный ввод может ускорить отображение контекстных меню). При открытии контекстного меню отображается предварительный просмотр элемента и список команд, которые над ним выполняются. Пользователи могут выбрать команду или перетащить элемент в другую область, окно или приложение.

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

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

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

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

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

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

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

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

Инструкции для разработчиков см. в разделе UIContextMenuInteraction.