У меня есть gridview, и я хочу, чтобы его элементы действовали по-разному, если пользователь выполняет щелчок или длинный щелчок, поэтому я использую OnItemClickListener и OnItemLongClickListener, но когда происходит длинный щелчок, оба слушателя реагируют. Я хочу выполнять только OnItemLongClickListener.
Как предотвратить работу OnItemClickListener при выполнении длинного клика?
Ответы (3)
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
return true;
}
return true будет предотвращать продолжение события click. Будет выполнено только OnItemLongClickListener
.
person
meizilp
schedule
23.12.2010
Вы можете использовать AdapterView.setOnItemLongClickListener. GridView наследует AdapterView, поэтому вы также можете вызывать этот метод в GridView.
person
Tony
schedule
17.10.2010
Я уже использую AdapterView.setOnItemLongClickListener, но я также использую setOnItemClickListener, и они оба реагируют на длинные клики, которые я хочу предотвратить, чтобы OnItemClickListener реагировал на длинные клики.
- person Tony; 17.10.2010
Для перехвата длинных щелчков (нажатий) необходимо реализовать GestureDetector.OnGestureListener< /а>
person
Barmaley
schedule
18.10.2010