Вы должны добавить слушателя каждый вид в RelativeLayout
вы хотите слушать. Если вы хотите использовать один прослушиватель, создайте его и добавьте его ко всем просмотрам, которые вы хотите прослушать. В вашем методе onClick
вы можете поместить view.getId()
в оператор switch и определить, на какой из них щелкнуть.
OnItemClickListener
не решит вашу проблему. Ни переход на RecyclerView
. Они работают одинаково. Это все о вашем адаптере. Если вы используете адаптер custom, не имеет значения, вы используете ListView
или RecyclerView
. В вашем адаптере у вас есть доступ к вашим компонентам, которые находятся в вашем RelativeLayout
. Создайте слушателя, как я объяснил выше, и добавьте их в свои представления.
Не то же самое, но подобный вопрос: Android: Add event listeners to every item in a ListView
https://developer.android.com/training/material/lists-cards.html –
Этот ответ показать, почему использовать recyclerview вместо Listview, я думаю, recyclerview будет решать ваша проблема http://stackoverflow.com/a/24933117/2242903 –
'int position'? –