Для ограниченного списка не используйте поле редактирования автозаполнения или комбинированный список, но используйте список, в котором все значения видны одновременно.Для ограниченных списков, особенно со статическим содержимым до 8 элементов, это занимает много места, но дает пользователю лучший непосредственный обзор.
Для менее чем 5 элементов - радиогруппа или группа флажков (несколько вариантов выбора)) также может быть лучше.
Для списков, содержимое которых является динамическим, например, список контактов, подходит список прокрутки или комбинированный список, потому что вы никогда не знаете, сколько элементов будет в списке.Чтобы обеспечить его управляемость, вам потребуется разрешить некоторую фильтрацию и / или автозаполнение.
Автозаполнение обычно страдает от того факта, что типы пользователей должны соответствовать строке с самого начала.Я ненавижу их, за исключением случаев, когда они используются для завершения значения, основанного на том, что я набрал в этом (тип) поле раньше.Например, то, что в настоящее время предлагают браузеры при заполнении онлайн-форм.
Разрешение пользователю начать печатать в поле со списком обычно имеет тот же недостаток.Но по общему признанию это не нужно, если фильтрация основывается на «like% abc%» вместо «начинается с abc»
При работе со списками, которые могут иметь много похожих элементов, мне действительно нравится способ GMailПоле «To» обрабатывает это.Вы начинаете вводить любую часть чьего-либо имени или адреса электронной почты, и GMail выпадает из списка, представляющего все контакты, чье имя или адрес электронной почты содержит символы, которые вы ввели, такдалеко где-нибудь внутри них.Использование клавиш «вверх» и «вниз» изменяет выбор в раскрывающемся списке (не влияя на то, что вы ввели), а нажатие клавиши ввода добавляет выбранный в данный момент элемент в поле «Кому».Безусловно, лучший пользовательский опыт, который у меня был до сих пор, когда мне приходилось выбирать что-то из списка.
Пока не найдено ни одного компонента, который мог бы это сделать, но его не слишком сложно "подделать", комбинируяполе редактирования и список, который выпадает вниз, когда вы начинаете печатать, и его содержимое фильтруется на основе того, что было напечатано до сих пор.