При вызове onItemLongClickListener, onItemClickListener также работает
У меня есть ListView
, в котором onItemClickListener
и onLongItemClickListener
используются для разных вариантов. Он прекрасно работает в jellybean
. Но в Nexus5
, Когда я долго нажимаю на ListView
, вызываются и onItemClickListener
, и onLongItemClickListener
. Почему это происходит? Кто-нибудь знает об этом?
1 ответ:
Вы должны установить возвращаемое значение
OnItemLongClickListener
в trueprivate AdapterView.OnItemLongClickListener itemLongClickListener = new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) { //... Do stuff return true; } };
Именно так событие сообщает своему родителю, что событие click было обработано. Если он установлен в false, то
OnItemClickListener
также будет запущен, вызывая свой метод прослушивателя.