После touchDown()
я звоню game.setScreen(new ScreenClass(this));
Это отлично работает, но когда доходит до нового экрана, и я отпускаю мышь (или поднимаю палец), новый экран запускает событие touchUp()
. Есть ли способ предотвратить запись этого первого touchUp
?
0
Seanoseanohay
21 Май 2013 в 09:05
Это может быть очевидный вопрос, но пробовали ли вы переместить свою логику в touchUP вместо касания, должно ли оно быть при касании?
– joey.enfield
22 Май 2013 в 17:40
Я упоминал об этом ниже. Возможно, это лучший вариант.
– Seanoseanohay
23 Май 2013 в 08:21
1 ответ
Лучший ответ
Вы можете просто добавить флаг на второй экран, чтобы игнорировать первое событие касания.
private boolean isFirstTouchUp = true;
В событии ретуши добавьте этот код,
if(isFirstTouchUp){
isFirstTouchUp = false;
}else{
// Do you touchup event here,
}
Надеюсь, я смогу вам помочь: D
0
Jeff Lee
21 Май 2013 в 09:34
Спасибо за предложение. Мне было интересно, есть ли что-то встроенное в LibGDX, которое я пропустил, чтобы справиться с этим. Ваше решение - отличная работа.
– Seanoseanohay
22 Май 2013 в 08:11
Насколько я знаю, встроенной функции нет: D Удачи
– Jeff Lee
22 Май 2013 в 08:18
Еще одно предложение, которое я получил, - изменить экран при touchUp ... это также решит проблему. Я использую вашу идею. Спасибо
– Seanoseanohay
22 Май 2013 в 17:30
Было бы лучше использовать
– touchUp()
, потому что обычно действие выполняется после события click , которое представляет собой touchDown()
, за которым следует touchUp()
.
flawyte
23 Май 2013 в 00:22
Похожие вопросы
Новые вопросы
java
Java — это высокоуровневый объектно-ориентированный язык программирования. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег часто используется вместе с другими тегами для библиотек и/или фреймворков, используемых разработчиками Java.