¿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 --> 
  • Android: archivo de acceso desde la pantalla de activos \ PDF
  • Necesita una solución de trabajo para usar la pantalla de bloqueo de patrón Android en la aplicación personalizada (y no redireccionamientos de código fuente)
  • Android: Dialog Builder multipleselection arreglo matriz
  • Cómo construir diagramas de secuencia utilizando ingeniería inversa en Enterprise Architect para la aplicación android
  • Android camera2 Error de API en la llamada a createCaptureSession
  • Comparación de números de teléfono en Android
  • Websocket Server Android
  • Portable JDBC vs SQLite en Android
  • No se pudo encontrar la clase referenciada desde el método android java.lang.NoClassDefFoundError
  • Obtener la hora del sistema en milisegundos en android
  • Error de Androidplot: No se puede resolver getGraphWidget y otro método
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.