Ответ 1
OnItemSelectedListener используется для Spinners, а для ListViews используется OnItemClickListener.
В чем разница между этими двумя слушателями, документация говорит:
OnItemSelectedListener - определение интерфейса для обратного вызова, вызываемого при выборе элемента в этом представлении.
OnItemClickListener - определение интерфейса для обратного вызова, вызываемого при нажатии элемента в этом адаптивном элементе.
Выбор, нажмите, не равны ли они на сенсорном экране?
OnItemSelectedListener используется для Spinners, а для ListViews используется OnItemClickListener.
AdapterView.OnItemSelectedListener вызывается только тогда, когда вновь выбранная позиция отличается от ранее выбранной позиции или если не было выбранного элемента.
Однако AdapterView.OnClickListener вызывается, даже если вы каждый раз нажимаете один и тот же элемент.
http://developer.android.com/reference/android/widget/AdapterView.OnItemSelectedListener.html