Intereting Posts
Как определить, когда закрыт внутренний PreferenceScreen Как получить rss-каналы android? Android – удаление файлов на SD-карте при удалении Android + gradle: разные метаданные манифеста Мобильные направления движения в Интернете из текущего местоположения Как предотвратить появление клавиатуры для EditText, которая не включена Отличительные особенности режима разработки и режима среды выпуска на Android Android registerOnSharedPreferenceChangeListener () вызывает сбой в пользовательском представлении Android: как узнать, когда приложение входит или «фоновый» режим? Как установить размер и расположение в onSizeChanged? Google map v3 не отображается полностью в html5 Как я могу заставить сайт масштабироваться для исправления для мобильных устройств (Iphone android ..) Запустить обратный вызов на главной теме Как реализовать настроенное представление стека в Android? Как добавить переключатель в панель действий Android?

Событие LongClick также вызывает событие Click

Я использую onLongClick и onClick события кнопки для ввода пользовательских входов. Всякий раз, когда; Пользователь долго щелкает и запускает событие onLongClick, также запускается событие onClick. Я не мог найти свою проблему. Код двух методов показан ниже:

@Override public void onClick(View v) { switch(((Button) v).getId()) { case R.id.enter: EntertheNumber(); break; case R.id.clear: CleartheNumber(); break; case R.id.number_zero: case R.id.number_one: case R.id.number_two: case R.id.number_three: case R.id.number_four: case R.id.number_five: case R.id.number_six: case R.id.number_seven: case R.id.number_eight: case R.id.number_nine: AddtotheNumber(mEditor, (Button) v); break; } @Override public boolean onLongClick(View view) { if(SMBGuesstheNumber.bDisplayFlagList) { theActiveButton = (Button) view; showDialog(R.id.display_flaglist); } return false; } 

На самом деле, мой проект – Open Source. Итак, вы можете найти весь код по адресу http://code.google.com/p/guessthenumber/

Спасибо.

Solutions Collecting From Web of "Событие LongClick также вызывает событие Click"

Я не уверен, в каком порядке происходят эти события, но обработчик onLongClick возвращает bool, чтобы указать, было ли обработано событие. Вы должны вернуть true, если вы обработали его, чтобы другие вызовы не вызывались. Я не знаю, предотвратит ли это onClick ().

Вы также можете отключить и отключить эти события с помощью setClickable (boolean) и setLongClickable (boolean)

Здесь вы можете найти эту информацию и узнать о событиях пользовательского интерфейса.

Вот краткий обзор касательного события: http://rxwen.blogspot.com/2010/10/android-touch-event-summary.html