0

What i want is to know is what i am writing in the edit text at runtime or when i am writing in the edit text, or else just to know that i have clicked something in the soft keyboard.

I used onKeUp method but its working only if i am pressing enter or cancel button

 @Override
public boolean onKeyUp(int keyCode, KeyEvent event) {

    switch (keyCode) {

        case KeyEvent.keyCodeFromString():
            if (event.isShiftPressed()) {
                Log.i("sandeep","1");
            } else {
                Log.i("sandeep","2");
            }
            return true;
        case KeyEvent.KEYCODE_K:
            if (event.isShiftPressed()) {
                Log.i("sandeep","3");
            } else {
                Log.i("sandeep","4");
            }
            return true;
        default:
            Log.i("sandeep","5");
            return super.onKeyUp(keyCode, event);
    }
}
Mark Rotteveel
  • 90,369
  • 161
  • 124
  • 175
Sandeep Dhami
  • 553
  • 1
  • 6
  • 15

2 Answers2

2

Implement this addTextChangedListener for your EditText

Add this code in onCreate() of your activity or fragment class

editText.addTextChangedListener(new TextWatcher() {

    @Override
    public void afterTextChanged(Editable s) {
        //do your stuff here
    }

    @Override    
    public void beforeTextChanged(CharSequence s, int start,
         int count, int after) {
    }

    @Override    
    public void onTextChanged(CharSequence s, int start,
         int before, int count) {
        //do your stuff here
    }
});

This helps you to find out text has been changed in EditText at runtime

Quick learner
  • 9,144
  • 3
  • 37
  • 51
0

I think you're looking for EditorActionListener

mEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        // use keyEvent
        return false;
    }
});
LonelyCpp
  • 2,113
  • 1
  • 15
  • 33