Eric Bergman-Terrell's Blog

Android Programming Tip: How to React to Enter typed in an EditText Field
April 19, 2012

I am updating Vault 3 for Android to initiate a search when the user types Enter in the search text box. Here's how I did this:

  1. I created a Key Listener on the search EditText field.
  2. When Enter is typed, the perfomClick is called on the search button, but only if the search button is visible and enabled.

Here's the code:

searchText = (EditText) findViewById(R.id.SearchText);
		
...

// Initiate a search when user types ENTER.
searchText.setOnKeyListener(new OnKeyListener() {
    public boolean onKey(View v, int keyCode, KeyEvent event) {
	    	boolean result = false;
		    	
	// If the event is a key-down event on the "enter" button
        if (event.getAction() == KeyEvent.ACTION_DOWN && keyCode == KeyEvent.KEYCODE_ENTER && searchButton.isEnabled() && searchButton.getVisibility() == View.VISIBLE) {
        	searchButton.performClick();
        	result = true;
        }
		        
        return result;
    }
});

antique typewriter

Keywords: Android, EditText, View, performClick, setOnKeyListener, KeyEvent, getVisibility

Reader Comments

Comment on this Blog Post

Recent Posts

TitleDate
EBTCalc Users: A Desktop Version is Now Available!October 25, 2019
Python Script to Audit MediaMonkey TranscodingAugust 15, 2019
How to decompile Java code with JetBrains IntelliJ IDEA (2018.2.3, Windows 10)October 5, 2018
Java Programming Tip: SWT Photo Frame ProgramOctober 31, 2016
Vault 3 (Desktop) Version 1.63 ReleasedSeptember 9, 2016
"Compliance with Court Orders Act of 2016"April 9, 2016
Disable "Visual Voicemail" on Android / T-MobileJanuary 17, 2016