Отправляйте событие Touch END, пока пользователь не коснется экрана в Lua
Я хочу, чтобы событие TOUCHES_ENDS отправлялось до тех пор, пока пользователь не коснется экрана, как бы оно ни отправлялось, например, только один раз при удалении касания, например, я хочу, чтобы мой проигрыватель работал непрерывно, пока пользователь не касается экрана, и мне нужно что-то сделать иначе, когда пользователь касается экрана. Пожалуйста?
1 ответ
Я не знаю Гидроса, однако вы можете использовать эти события для хранения переменной Lua, которая указывает на состояние касания. Например, когда происходит событие TOUCHES_BEGIN, задайте для глобальной переменной с именем _touching значение true. При возникновении события TOUCHES_END вы можете установить для этой глобальной переменной значение false.
Предполагая, что код выполняется в цикле, вы просто заставляете игрока ходить, когда глобальная переменная _touching установлена в false, и делаете что-то еще, когда эта переменная оценивается как true.
Кроме того, после небольшого поиска в Google, я заметил также события TOUCHES_MOVE и TOUCHES_CANCEL, а событие END называется TOUCHES_END (для библиотеки Sprite), вы можете проверить это:
- http://docs.giderosmobile.com/reference/gideros/Sprite/Event.TOUCHES_MOVE
- http://docs.giderosmobile.com/reference/gideros/Sprite/Event.TOUCHES_CANCEL
Надеюсь, это поможет вам на вашем пути.
edit - Глобальные переменные обычно считаются чем-то плохим в Lua, но в этом случае это может помочь вам.