Android: ListView с кнопками → OnItemClick ничего не делать

Моя проблема возникает из ListView. Без кнопок отлично работает .setOnItemClickListener ListView. (запустите действие)

В то время, когда я добавляю кнопки в элементы списка ListView, кнопки можно щелкнуть, но элементы не являются более доступными для просмотра...

Я пытаюсь использовать myListView.setItemCanFocus(true);, но он не работает...

Ответ 1

Удалите атрибут focusable из Button, чтобы решить эту проблему. Вы можете сделать это либо в XML файле макета, либо в исходном коде java.

И еще один совет: если вы используете ImageButton вместо Button, вам нужно setFocusable в вашем java-коде, чтобы сделать эту работу, потому что конструктор ImageButton будет активировать этот атрибут после раздувания из XML файла.

Ответ 2

Лучше использовать обратный вызов onTouch() для кнопки clickable в списке. Затем вы можете щелкнуть. Как элемент списка, так и кнопку. См. этот вопрос для некоторого кода (нет необходимости в touchDelegate).

Ответ 3

Причиной является кнопка в вашем списке, поглощающая onItemClickEvent.

Хорошо объясненный учебник здесь

Ответ 4

Вы можете использовать это в .setOnItemClickListener ListView

view.findViewById(R.id.btn_id).setOnClickListener(new View.OnClickListener(){//your method})