Должен ли значок показывать текущее состояние или следующее состояние? - PullRequest
21 голосов
/ 27 апреля 2010

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

Ответы [ 4 ]

16 голосов
/ 27 апреля 2010

В этом нет ни стандартизации, ни общих человеческих тенденций. Например, в Руководстве по взаимодействию с MS Windows UX указаны четыре основных типа переключения управления прогрессивным раскрытием . Три из четырех показывают состояние при активации, а один показывает текущее состояние.

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

Если вам повезет, пользователи используют значок в основном для чтения состояния или установки состояния, а не для того и другого. Затем позвольте значку указать, для чего пользователи его используют.

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

  • Используйте текст в дополнение к значку или вместо него. Когда он помечен глаголом (например, «Соединить»), элемент управления указывает состояние, которое получает пользователь. Когда обозначено прилагательным или существительным (например, «On Line»), это подразумевает текущее состояние.

  • Если ваша библиотека не поддерживает переключение значков, подумайте об использовании флажка, если это разрешено.

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

  • Поиграйте с графическим дизайном или размещением, чтобы оно соответствовало выбранному вами значению. Например:

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

    • Элементы управления панели инструментов обычно показывают состояние, которое они вызывают, поэтому поместите значок в верхней части окна, если он указывает состояние, которое получает пользователь. Напротив, значки в «рабочей области» окна указывают объекты или атрибуты, поэтому значки там должны показывать текущее состояние. Значки внизу окна (в строке состояния) также должны отображать текущее состояние.

6 голосов
/ 27 апреля 2010

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

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

3 голосов
/ 27 апреля 2010

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

Вы привели пример текста, который свернут / развернут. Подумайте о любом расширяемом древовидном интерфейсе, который вы когда-либо видели в Windows. Свернутое дерево имеет [+] рядом с ним, потому что нажатие кнопки раскроет дерево. И у развернутого дерева есть [-] рядом с ним по той же причине.

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

1 голос
/ 27 апреля 2010

Я предпочитаю подход "следующее состояние" (нажмите плюс, чтобы развернуть, нажмите минус, чтобы свернуть). Одна из причин заключается в том, что это наиболее широко используемый подход, поэтому выполнение чего-либо еще может запутать пользователей (и меня тоже). Другая причина в том, что подход «следующее состояние» выглядит более привлекательным для пользователя.

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