Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This question already has an answer here:

Have a question on keyboard inputs. Currently I am using this method to read my input, Gdx.input.isKeyPressed(Input.Keys.A), it is working fine. But I do realized at times there are multiple instances of A being pressed when I only press once. And I understand that the method had to be placed in the render() method for it to work. Is the problem due to the refreshing?

My question is, how can I only detect 1 instance of "A", when A is pressed for once.

share|improve this question

marked as duplicate by aaaaaaaaaaaa, Seth Battin, Byte56 Oct 2 '13 at 21:32

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

Maybe I should clarify myself, when i detected the key then the textfield will be updated with the input. – leDon Oct 1 '13 at 14:49
Eh, I think i got what you mean, Thanks for the help :) – leDon Oct 1 '13 at 14:59

LibGdx library provided an InputProcessor Interface, I think you are better to implement the InputProcessor and you should set Screen's input processor to the class you made, see tutorials that dermetfan user made on youtube

however you may would like to use different methods, also check DeviceInfo of LibGdx for checking devices.

share|improve this answer

store the current keys state, get the new ones and

if(newInput.isKeyPressed(Input.Keys.A) && oldInput.isKeyUp(Input.Keys.A))
share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.