I am looking for the best way to let the user choose one option from a list that might be somewhat long.

I was considering an AutoCompleteTextView, but it is important that the user only can choose between items from the list, not input their own. For this I would normally use a Spinner, but the number of items available for this selection might get rather large over time, thus it would be nice if the users could filter or search the items.

I would prefer to have a solution that will, when not activated, fit on a single line. This is for other design reasons (this happens in a dialog).

What should I do?

I so far have two possible solutions:

1) AutoCompleteTextView. I will then warn the user that the "selected" item isn't valid if the content of the field is not one of the items. User pros: Can enter text and have results filtered. Will not get frustrated by having to scroll through many items.

2) Spinner. Was designed to handle selection between items on a list. User pros: Will be forced to select only between valid options, won't be confronted with error message.

Maybe someone has a better idea or know of a way to combine the pros?

1 Answer 1


Use AutoCompleteTextView entries only

If you have too much entries for a spinner, this is the best known way currently.

typeahead typeahead no results

An implementation solution is on stackexchange

  • Yes, this is the kind of solution I was thinking about, thank you.
    – Kitalda
    May 22, 2015 at 11:32
  • Btw: be aware that users need to know what they are searching for.
    – Gustav
    May 22, 2015 at 11:39
  • They will be ^^ They will be searching for customer names from their own database of customers.
    – Kitalda
    May 22, 2015 at 11:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.