studio programacion para móviles libro edición desarrollo desarrollar curso aprende aplicaciones android android-edittext enter

para - manual de programacion android pdf



Android ejecuta la función después de presionar "Enter" para EditText (3)

Elimine la instrucción de importación que tiene DialogInterface , luego importe View.OnKeyListener .

He estado siguiendo los tutoriales oficiales de Android y de alguna manera estoy teniendo un problema con este ejemplo muy simple para ejecutar una función después de presionar "Enter" para editar un texto.

Entiendo lo que se supone que debo hacer y parece que todo está configurado correctamente, pero Eclipse se queja con esta línea:

edittext.setOnKeyListener(new OnKeyListener() {

Subraya setOnKeyListener con el error:

El método setOnKeyListener (View.OnKeyListener) en el tipo View no es aplicable para los argumentos (new DialogInterface.OnKeyListener () {})

Y también subraya OnKeyListener con el error:

El tipo nuevo DialogInterface.OnKeyListener () {} debe implementar el método abstracto heredado DialogInterface.OnKeyListener.onKey (DialogInterface, int, KeyEvent)

Tal vez alguien puede dispararme en la dirección correcta? Antes de probar otras soluciones (que ya he encontrado en stackoverflow), realmente me gustaría resolver esto porque me tiene nervioso que algo tan simple de seguir, como un tutorial oficial, no parece funcionar.

Gracias por adelantado.


Por lo que puedo ver, parece que tienes una importación incorrecta.

Tratar

edittext.setOnKeyListener(new View.OnKeyListener() {

O agregue esta importación

import android.view.View.OnKeyListener;

y eliminar este

import android.content.DialogInterface.OnKeyListener;


Para recibir un evento de teclado, una Vista debe tener foco. Para forzar este uso:

edittext.setFocusableInTouchMode(true); edittext.requestFocus();

Después de eso, continúe con el mismo código en el ejemplo:

edittext.setOnKeyListener(new View.OnKeyListener() { public boolean onKey(View v, int keyCode, KeyEvent event) { // If the event is a key-down event on the "enter" button if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) { // Perform action on key press Toast.makeText(HelloFormStuff.this, edittext.getText(), Toast.LENGTH_SHORT).show(); return true; } return false; } });