Foros del Web » Programando para Internet » Android »

[SOLUCIONADO] Error Implements OnclickListener

Estas en el tema de Error Implements OnclickListener en el foro de Android en Foros del Web. buenas noches Les comento, Soy novato en Android y ya tengo el primero error que no he podido solucionar... he buscado en Google pero ninguna ...
  #1 (permalink)  
Antiguo 25/07/2014, 21:22
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 12 años, 11 meses
Puntos: 76
Error Implements OnclickListener

buenas noches

Les comento, Soy novato en Android y ya tengo el primero error que no he podido solucionar... he buscado en Google pero ninguna solucion me funciona a mi....

Al implementar OnClickListener en la clase myActivity

Código Java:
Ver original
  1. public class MyActivity extends ActionBarActivity  implements OnClickListener


Me sale el siguiente error:

Error:(12, 8) error: MyActivity is not abstract and does not override abstract method onClick(View) in OnClickListener

Tengo el siguiente codigo:

Código Java:
Ver original
  1. Button btnAceptar = (Button) findViewById(R.id.btnAceptar);
  2.  
  3.         btnAceptar.setOnclickListener(new View.OnclickListener(){
  4.             @Override
  5.             public void onClick(View view)
  6.             {
  7.                 Toast.makeText(getBaseContext(),"Has Pulsado Aceptar", Toast.LENGTH_SHORT).show();
  8.             }
  9.         });

En la linea :
Código Java:
Ver original
  1. btnAceptar.setOnclickListener(new View.OnclickListener(){

Las Palabras setOnclickListener y OnclickListener Me salen de color rojo....

Me imagino es por el mismo error de arriba....

Estoy Usando Android Studio, les agradezco mucho su ayuda..

Gracias.
  #2 (permalink)  
Antiguo 26/07/2014, 00:35
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Error Implements OnclickListener

No es un error de Android, es un error de Java. Específicamente porque no conoces el lenguaje.

El error es sencillo. Tu clase implementa la interfaz OnClickListener. Entonces tu clase MyActivity debe de implementar el método public void onClick(View view).

Pero veo que no lo estas haciendo y estas haciendo directamente.

Código Java:
Ver original
  1. btnAceptar.setOnclickListener(new View.OnclickListener(){
  2.             @Override
  3.             public void onClick(View view)
  4.             {
  5.                 Toast.makeText(getBaseContext(),"Has Pulsado Aceptar", Toast.LENGTH_SHORT).show();
  6.             }
  7.         });
Estas implementando el método de la interfaz, pero en una clase anónima. En conclusión, tienes 2 opciones.

Quitar implements OnClickListener o implementar el método onClick en tu clase MyActivity, remover el bloque de codigo de btnAceptar.setOnclickListener(...) y reemplazarlo por btnAceptar.setOnclickListener(this).
  #3 (permalink)  
Antiguo 26/07/2014, 02:47
Avatar de jc_moj  
Fecha de Ingreso: septiembre-2009
Ubicación: Andalucía
Mensajes: 137
Antigüedad: 14 años, 7 meses
Puntos: 12
Respuesta: Error Implements OnclickListener

Hola

Para el click de los botones también está la posibilidad de usar el atributo android:onClick en el archivo XML.

Personalmente me gusta más y es la forma que siempre uso, pero soy muy novato aun en Android y no sé si será la opción más adecuada.

Saludos
  #4 (permalink)  
Antiguo 26/07/2014, 13:58
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 12 años, 11 meses
Puntos: 76
Respuesta: Error Implements OnclickListener

hola

Gracias por sus aportes

las palabras setOnclickListener y OnclickListener ; las habia escrito sin respetar el case sensitive , debe ser Click y no click ,

no tuve necesidad de implementar la interfaz OnClickListener...

Muchas Gracias..



Etiquetas: androi, bar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:40.