Hola desarrolladores, normalmente cuando mostramos un Toast, aparece una pequeña ventana durante unos segundos con un texto en el que mostramos el contenido que deseamos.
En este caso el toast varía de una forma más personalizada.
Toast personalizado : Texto + imagen
Bien, vamos a ello: En la carpeta res/layout he creado el contenedor contenidotoast.xml que lleva este código:
Analizando el código vemos que hay una imagen referenciada a ic_menu_info_details en la carpeta drawable,y el textview referenca a text_icon_msg, que es un valor en string.xml al que le he puesto el texto de contenido "Bienvenido a Android"
.
Ahora bien, vamos a usar la clase java de la actividad principal, en esta, unicamente hay un boton, el cual al pulsarlo, aparece el Toast:
import android.os.Bundle; import android.app.Activity; import android.view.Gravity; import android.view.LayoutInflater; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.Button; import android.widget.Toast; public class MainActivity extends Activity { //DECLARO VARIABLES private Button b1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //Instancio boton b1=(Button) findViewById(R.id.b1); //Listener boton b1.setOnClickListener(new OnClickListener(){ @Override public void onClick(View arg0) { // TODO Auto-generated method stub getToast(); } }); } //FUNCION PARA MOSTRAR TOAST public void getToast(){ //Inicializo Toast //Creo una vista que contiene el layout contenidotoast.xml //incluyendolo en la vista de la actividad principal LayoutInflater inflater = getLayoutInflater(); View layout = inflater.inflate(R.layout.contenidotoast, (ViewGroup) findViewById(R.layout.activity_main)); //Configuro Toast Toast toast = new Toast(getApplicationContext()); //gravedad toast.setGravity(Gravity.CLIP_HORIZONTAL, 0, 0); //tipo toast toast.setDuration(Toast.LENGTH_LONG); //mostrar toast toast.setView(layout); toast.show(); } }
Y bien, este es el resultado :
Espero que haya sido de ayuda a más de uno, thebestandroide!!
Podeis descargar el código fuente de thebestandroide con sólo compartir en facebook,twitter,linkedin o suscribirte a nuestro canal RSS más abajo.
0 comentarios:
Publicar un comentario