Вопрос

По большому счету, модальные интерфейсы — это отстой.С другой стороны, я не могу придумать лучшего способа справиться с этим. Файл Открыть..., или Распечатать... и это, я думаю, потому, что

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

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

Это было полезно?

Решение

ИМХО, модальные интерфейсы следует использовать только тогда, когда вы ИМЕТЬ чтобы разобраться с тем, что делает или спрашивает диалог, прежде чем приложение сможет продолжить работу.В любой другой раз, если вы используете диалог, он должен быть немодальным.

Другие советы

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

С другой стороны, я ценю, когда диалог поиска/замены немодальный:Я могу вернуться к документу и отменить последнее изменение, перейти в другое место и т. д.;без потери текущих настроек.

Каким-то образом модальные диалоги говорят пользователю «остановить все остальное и закончить то, что вы делаете», что имеет свое применение, как указано в Ответ Стивена Райтона.

По моему опыту, в пользовательском интерфейсе очень мало вещей, которые должны быть модальными.Одним из лучших примеров этого и, вероятно, очень знакомым пользователям сайта, является Eclipse.Хотя в нем есть несколько модальных диалогов (я говорю здесь только о базовой IDE), они в основном делятся на три категории:Операции с файлами, диалоги настроек и диалоги параметров.

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

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

  • Диалоги ввода параметров (пример:мастера рефакторинга.антипример:найти диалоги)
  • Операции с файлами
  • Подтверждение действия, которое будет иметь немедленный разрушительный эффект

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top