Я использую ListView, который является установкой как это:
<ListView android:id="@android:id/list" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:longClickable="false"
android:choiceMode="singleChoice">
</ListView>
В моем коде я добавляю OnItemSelectedListener к ListView как это:
getListView().setAdapter(adapter);
getListView().setOnItemSelectedListener(this);
мое Действие реализует слушателя как этот:
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Log.d("Tag", "ListItemSelected: Parent: " + parent.toString() + " View: "
+ view.toString() + " Position: " + " Id: " + id);
}
Моя надежда была, что я буду видеть, что эта отладка производит момент, я нажимаю на что-то в списке. Но вывод отладки никогда не показывают в LogCat.
OnItemSelectedListener
прослушивает выбор элементов списка, а не щелчки по элементам списка.
Выбор в этом случае можно рассматривать как перемещение фокуса на этот элемент с помощью трекпада устройства.
Чтобы получить желаемое поведение, необходимо использовать OnItemClickListener
.