¿Cómo llamar a un método definido en otra actividad / clase onClick () de un elemento del botón?

Estoy trabajando en el Layout de mi actividad principal con Android Studio (la API más baja es 15 ), y he definido algunos botones XML en él.

La idea del programa es editar una lista de palabras añadiéndola, mostrándola y borrándola con un conjunto de botones. ( Hay un EditText para agregar, pero eso no es importante para la pregunta ). Pero con la idea de la cohesión alta en la mente, he definido esta lista y los métodos que la manipulan en otra clase llana llamada WordList ( que todavía extiende la actividad ), y tan al intentar invocar la propiedad onClick de un botón, no puede encontrar ellos.

android:onClick="addWord" 

Método 'addWord' falta en 'MainActivity' o tiene firma incorrecta …

¿Hay alguna manera de hacer que el diseño, o el elemento individual punto ( o obtener su contexto de datos ) de otra clase, o es que en contra de toda la estructura de Android y debería ponerlo en su actividad original?

¿Está utilizando la firma correcta para el método?

Métodos define utilizando el atributo onClick debe cumplir los siguientes requisitos:

  • Debe ser público
  • Debe tener un valor de retorno vacío
  • Debe tener un objeto Ver como parámetro (que es la vista que se ha hecho clic)

me gusta

 public void addWord(View view) { //your action } 

Agregue un OnClickListener al botón en lugar de utilizar el atributo XML onClick.

https://stackoverflow.com/a/29479937/1496693

Pruebe esto, debería funcionar:

 Button btn = (Button) findViewById(R.id.mybutton); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { addWord(v); } }); // some more code public void addWord(View v) { // does something very interesting } 

Implementación de XML

 <?xml version="1.0" encoding="utf-8"?> <!-- layout elements --> <Button android:id="@+id/mybutton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Click me!" android:onClick="addWord" /> <!-- even more layout elements --> 
  • Diálogo de alerta de Android y botón positivo
  • Lectura de Android desde un flujo de entrada eficientemente
  • SSL Handshake no se puede conectar a Google desde un cliente Android
  • Práctica recomendada: Ampliación o anulación de una clase de proyecto de biblioteca de Android
  • Android no puede cargar la imagen orientada correcta desde la galería
  • No se puede eliminar la acción javaCompile antigua, tal vez el nombre de la clase ha cambiado
  • El anuncio no aparece
  • Aplicación generador de trayecto para android
  • Mensaje de Android a Android sin Accesspoint
  • ¿Cómo puedo verificar los datos firmados que vienen para la aplicación de facturación de Android Market utilizando Java (Servlet)
  • Javadoc en Android (Eclipse)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.