Adicionar ação a tecla enter do android

Olá pessoal,

Alguém sabe me dizer como eu devo proceder para adicionar uma ação ao teclado do Android?

No meu caso no botão enter.

Grato.

Acredito que seja em um EditText especifico, então seria mais ou menos o seguinte:

search.setOnEditorActionListener(new OnEditorActionListener() {
            @Override
            public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
                if (event != null && event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
                    if (event.getAction() == KeyEvent.ACTION_DOWN) {
                        InputMethodManager in = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                        in.hideSoftInputFromWindow(search.getApplicationWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
                        contentManager.search(StringUtils.trim(search.getText().toString()));
                        search.setText("");
                    }
                    return true;
                }
                return false;
            }
        });

O check para ACTION_DOWN é por que será lançado um DOWN e um UP para a mesma tecla, e isso faria o listener ser disparado duas vezes para ENTER.

Olá Marky.Vasconcelos,

Muito Obrigado por responder, o exemplo funciona perfeitamente.

:smiley:

Por nada.

PS: O código que está ali no meio do InputMethodManager é para esconder o teclado :wink:

O único problema que estou tendo agora é que quando eu clico em cima do EditText, o mesmo está sendo ocultado pelo teclado.
Isso está acontece nos aplicativos com android 3.2, no aplicativos com android 2.2 quando eu clico no componente, caso o componente esteja posicionado no local onde o teclado irá aparecer, o componente é automaticamente reposicionado para cima do teclado.

Tem idéia do motivo de isso acontecer?
Será que esse comportamento está relacionado a versão do Android?

Grato.

Eu já resolvi isso adicionando o layout em um scroll.

[quote=levimendes]O único problema que estou tendo agora é que quando eu clico em cima do EditText, o mesmo está sendo ocultado pelo teclado.
Isso está acontece nos aplicativos com android 3.2, no aplicativos com android 2.2 quando eu clico no componente, caso o componente esteja posicionado no local onde o teclado irá aparecer, o componente é automaticamente reposicionado para cima do teclado.

Tem idéia do motivo de isso acontecer?
Será que esse comportamento está relacionado a versão do Android?

Grato.[/quote]

Olá Pessoal, na verdade eu estava enganado, por falta de atenção. :oops: :oops: :oops:

No tablet, quando nós digitamos algum texto em um campo EditText, o android coloca em cima do teclado um campo exibindo o texto conforme você digita, e ao lado desse exibe algumas sugestões de palavras.

Grato, Levi.

[RESOLVIDO]