Как предотвратить работу OnItemClickListener при длительном клике - PullRequest
12 голосов
/ 16 октября 2010

У меня есть вид сетки, и я хочу, чтобы его элементы действовали по-разному, если пользователь выполняет щелчок или длинный щелчок, поэтому я использую OnItemClickListener и OnItemLongClickListener, но когда происходит длинный щелчок, оба слушателя реагируют. Я хочу выполнить только OnItemLongClickListener.

Ответы [ 3 ]

46 голосов
/ 23 декабря 2010
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {   
   return true;
}

return true будет препятствовать тому, чтобы событие щелчка продолжалось. Будет выполнено только OnItemLongClickListener.

0 голосов
/ 18 октября 2010

Для того, чтобы перехватывать длинные клики (иначе говоря, постукивание), вы должны использовать GestureDetector.OnGestureListener

0 голосов
/ 17 октября 2010

Вы можете использовать AdapterView.setOnItemLongClickListener . GridView наследует AdapterView, поэтому вы можете вызывать этот метод и в GridView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...