Подходящий дизайн зависит от смысла и количества опций.

Если опций всего две, радиокнопки очевиднее всего:

Уведомить
меня

  • ○ только письмом

  • ○ только по телефону

  • 🔘 и письмом, и по телефону

Чекбоксы компактнее, но с ними не видно, что что‑то одно надо выбрать обязательно:

Уведомить
меня

  • ☑ письмом

  • ☑ по телефону

Можно подписать словами, но это неэлегантно.

Чекбоксы придётся использовать, если опций больше двух:

Уведомить
меня

  • ☑ письмом

  • ☑ по телефону

  • ☑ в чате

  • ☐ бросив снежок в окно

Чтобы реализовать такой выбор радиокнопками, понадобится пятнадцать радиокнопок, в которых чёрт ногу сломит.

Запрещать отключение последнего оставшегося чекбокса не нужно. Лучше включить какой‑то другой вариант при выключении последнего (это принцип «Дай нажать», про который надо бы отдельно написать). Так человек увидит, что полностью отказаться от уведомлений нельзя.

Отправить
Поделиться
Запинить

Комментарии

Нужно сразу подумать, почему обязателен хотя бы один вариант. Может быть, пустой выбор — допустимая ситуация?

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

Ни в коем случае не дизейблить последнюю оставшуюся выбранной галку. Потому что, если мы не даём перейти в пустое состояние, то мы должны выбрать непустое начальное состояние. И оно тогда будет выглядеть как «вариант А выбран и снять его нельзя» и часть пользователей даже не попробует выбрать Б и увидеть, что тогда А можно снять.

30 окт 2018

Рекомендуем другие советы