У меня есть спор с коллегой, и я пытаюсь убедить его, что это - плохая идея изменить текст флажка (маркировка) согласно состоянию флажка.
Например, у нас есть поле комбинированного списка, которое автоматически выбирает выбранное значение (и отключен), когда флажок рядом с ним проверяется и включен, когда флажок снимается. Его идея состоит в том, чтобы показать, Выбирают автоматически, когда флажок проверяется и Ручной выбор, когда это очищено. Я уверен, что это смутит пользователя, поскольку пользователи склонны думать, что проверка флажка рядом с глаголом сделает это верным, только чтобы найти, что маркировка изменилась на что-то еще.
Каково Ваше мнение об этом вопросе?
P.S. Я не забываю читать об изменении текста флажка где-нибудь, в статье книги или блога, но не могу помнить где. Было бы замечательно иметь это в письменной форме :-)
Нет необходимости возиться с тем, что уже работает.
Изменение метки будет ужасно запутанным и неинтуитивным, особенно в том виде, который вы описали.
Если метка описывает текущее состояние ("Ручной выбор"), то будет непонятно, нужно ли нажать на флажок, чтобы достичь описанного состояния (как в случае с кнопкой), или он уже находится в этом состоянии.
Флажок - это простая вещь. Когда он выключен, он делает A. Когда он включен, он не делает A. Метка должна отражать, что он делает, когда включен; тогда будет совершенно ясно, что не происходит, когда он выключен.
По моему опыту, изменение текста сбивает с толку, у меня такая же проблема с модальными кнопками, которые меняют свой текст. Трудно сказать, будет ли нажатие кнопки включать выбранное состояние или текст является выбранным состоянием.
Текст тикбокса не должен меняться
Если вы хотите показать, что вы можете выбирать между «Автоматический выбор» и «Ручной выбор», вам следует либо изменить текст метки флажка, либо установить переключатель :
o Manual Select
* Auto Select
Что тоже не идеально.
Но вы не должны изменять текст на этикетке - пользователь не запомнит, что это было раньше, и будет сбит с толку, когда он изменится.
Изменение текста, когда флажок отмечен, меняет смысл. Если флажок установлен и на ярлыке написано Autoselect, я ожидаю, что опция Autoselect будет включена. Если снять флажок, становится ясно, что опция Autoselect НЕ включена. Если изменить текст на "Ручной выбор", когда флажок снят, я ожидаю, что установка флажка включит опцию "Ручной выбор". Если текст постоянно меняется, это слишком запутанно.
Вы правы, он ошибается.
Этикетка определенно не должна меняться. Это не только сбивает с толку, но и является ненужным и некрасивым.
Единственный способ, который я могу придумать, чтобы сделать это менее запутанным, - это указать в скобках текущее состояние метки, т.е. "Manual(currently auto)[]".
Но это лишь подтверждение того, насколько уродливым это становится.
Не стоит вмешиваться в то, к чему люди привыкли. Особенно если учесть, что если вы сделаете это, то один из вариантов всегда будет отображаться С галочкой, а другой БЕЗ. Это действительно сбивает с толку.
Во имя компромисса, вы могли бы использовать вместо этого кнопку, которая переключает элемент управления туда и обратно, и меняет его значение при каждом нажатии.
Текущий режим: [Manual]
Но все равно это немного запутанно. Как я уже говорил, не стоит портить то, к чему люди привыкли. Это как если бы вы поместили полосу прокрутки в левой части экрана. Это просто запутает людей.
Я бы не стал менять метку флажка ... Я бы сказал "автоматически". Но, в зависимости от того, что на самом деле делают ваши элементы управления, я мог бы изменить выбор в сером поле со списком, чтобы отразить, что теперь он находится под автоматическим управлением.
Затем, чтобы логика работала в обоих направлениях, если, когда флажок был снят, пользователь выбрал «автоматическое» значение в поле со списком, флажок будет установлен.
Или в другом сценарии:
Если, когда установлен флажок «автоматический», автоматическая логика фактически выбирает значение по умолчанию, которое находится в поле со списком, затем измените выбор в поле со списком, чтобы показать, что автоматическая настройка на самом деле есть. Комбинацию нельзя будет редактировать, но ее можно использовать для предоставления информации о текущих настройках.
Метки флажков не должны изменяться. Это часть способа работы флажков.
См. Должны ли «переключатели» отображать то, что они делают, или состояние системы? на UXExchange для альтернативного подхода с использованием переключателей вместо флажков.