Evento de clic de botón en Android

Esto va a ser una pregunta real de noob, así que por favor ten piedad. Estoy tratando de crear un cuadro de mensaje en un evento de clic de botón en Android. He leído algunos ejemplos en StackOverflow, pero no puedo parece comprender el concepto. En mi archivo main.xml, he definido el botón xml como sigue:

<Button android:id="@+id/btnOK" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Display Message" android:onClick="onBtnClicked" /> 

He leído en uno de los mensajes que necesito para registrar el evento onClick en el diseño XML. Así que eso es lo que pensé que hice en el código XML anterior. Luego, en mi archivo de código java, he escrito el siguiente código:

 package com.example.helloandroid; import android.app.Activity; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class HelloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } public void onBtnClicked(View v) { if(v.getId() == R.id.btnOK) { MessageBox("Hello World"); } } public void MessageBox(String message) { Toast.makeText(this, message, Toast.LENGTH_SHORT); } } 

Para mí, esto tiene sentido. Pero el cuadro de mensaje no se muestra cuando hago clic en el botón. De las importaciones de código anteriores, puede ver que ya he probado algunas soluciones sin éxito. ¿Estoy perdiendo quizá un oyente? ¿Pensé que la definición en el código de XML crearía esto para mí?

Gracias por adelantado 🙂

Cambio

 Toast.makeText(this, message, Toast.LENGTH_SHORT); 

A

 Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); 

La demostración () se cerciora de usted realmente exhibe la tostada, de otra manera usted está creando solamente la tostada.

Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); – necesitas llamar al método show() ya que ahora solo estás creando el brindis sin mostrarlo.

 Toast.makeText(this, message, Toast.LENGTH_SHORT); 

esto es correcto

 Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); 

La Actividad debe implementar un View.OnClickListener e implementar el método onClick (View v)

En el método onCreate, tiene que inicializar el botón (después de la instrucción setContentView):

 Button b = (Button) findViewById(R.id.btnOK); b.setOnClickListener(this); 

En el método onClick:

 public void onClick(View v) { switch(v.getId()){ case R.id.btnOK: /* the instruccions of the button */ break; } } 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.