Щелчок по ListView, в котором есть элемент longclick

#android #listview #onclick #onclicklistener #onitemclicklistener

#Android #listview #onclick #onclicklistener #onitemclicklistener

Вопрос:

Я изучил несколько ответов на похожие вопросы, но ни один из них не работает в этом конкретном случае (который больше нигде не рассматривается).

  • У меня есть ListView содержимое ListItems с числом TextView s на каждом.
  • Когда я делаю короткий щелчок по любому ListItem , я расширяю этот элемент, чтобы показать больше информации (путем реализации AdapterView.OnItemClickListener ).
  • Один из TextView s android:longClickable="true" установлен. Это делается для того, чтобы я мог выполнить другое действие при TextView длительном нажатии на это конкретное значение (я добился этого путем реализации AdapterView.OnItemLongClickListener и проверки конкретного TextView идентификатора)
  • Я установил android:clickable="false" для этого TextView

Моя проблема в том, что теперь, когда я делаю короткий щелчок в любом ListItem месте элемента, элемент расширяется, как и ожидалось, ЗА исключением случаев, когда короткий щелчок находится на этом конкретном TextView , и в этом случае ничего не происходит.

Итак, короткий щелчок используется чем-то, даже если я установил для clickable значение false?

Я пропустил что-то очевидное? Если я включу android:longClickable="false" это TextView , расширение снова будет работать нормально.

Ответ №1:

Казалось, событие прерывается прослушивателем длинного щелчка.

Попробуйте проверить возвращаемое значение «onItemLongClickListener», это логический тип, который решит, обрабатывается событие или нет.

Удачи!

Комментарии:

1. Я думаю, вы упустили мою точку зрения. Я не делаю длинный щелчок, поэтому onItemLongClickListener он не запускается. Я хочу, чтобы это произошло для onClickListener for ListItem , который содержит TextItem подлежащий запуску. Но на самом деле происходит … ничего.