Requisitos previos:
- Fundamentos de desarrollo de aplicaciones de Android para principiantes
- Guía para instalar y configurar Android Studio
- android | Comenzando con la primera aplicación/proyecto de Android
- android | Ejecutando tu primera aplicación de Android
Este artículo tiene como objetivo contar qué es Toast y cómo usarlo para mostrar mensajes en una aplicación de Android.
¿Qué es Toast en Android?
Un brindis es un mensaje de retroalimentación. Se necesita muy poco espacio para mostrar, mientras que la actividad general es interactiva y visible para el usuario. Desaparece después de unos segundos. Desaparece automáticamente. Si el usuario quiere un mensaje visible permanente, se puede usar la notificación .
Otro tipo de Toast es el Toast personalizado , en el que se pueden utilizar imágenes en lugar de un simple mensaje.
Toast class : la clase Toast proporciona un mensaje emergente simple que se muestra en la pantalla de la interfaz de usuario de la actividad actual (p. ej., Actividad principal).
Constantes de la clase Toast
constantes | Descripción |
---|---|
int final estático público LENGTH_LONG | muestra durante mucho tiempo |
int final estático público LENGTH_SHORT | muestra por un corto tiempo |
Métodos de la clase Toast
Métodos | Descripción |
---|---|
Toast público estático makeText (contexto contextual, texto CharSequence, duración int) | hace que el mensaje del brindis consista en texto y duración |
espectáculo vacío público() | muestra un mensaje de brindis |
public void setMargin (margen horizontal flotante, margen vertical flotante) | cambia las diferencias horizontales y verticales |
Cómo crear una aplicación de Android para mostrar un mensaje Toast (con ejemplo)
En este ejemplo, «Este es un mensaje de brindis simple» es un mensaje de brindis que se muestra al hacer clic en el botón ‘CLICK’. Cada vez que haces clic, aparece tu mensaje de brindis.
Pasos para crear una aplicación Android con Toast Message:
- Paso 1: Cree un archivo XML y un archivo Java. Consulte los requisitos previos para obtener más información sobre este paso.
- Paso 2: abra el archivo «actividad_principal.xml» y agregue un botón para mostrar el mensaje Toast en un diseño de restricción .
Además, asigne ID al componente del botón como se muestra en la imagen y el código a continuación. La ID asignada al botón ayuda a identificar y usar en archivos Java.
android:id="@+id/id_name"
Aquí el ID dado es Button01
Esto hará que la interfaz de usuario de la aplicación.
- Paso 3: ahora, después de la interfaz de usuario, este paso creará el backend de la aplicación. Para esto, abra el archivo “MainActivity.java” e instancia el componente (Botón) creado en el archivo XML usando el método findViewById(). Este método vincula el objeto creado a los componentes de la interfaz de usuario con la ayuda de la ID asignada.
Sintaxis general:
objeto ComponentType = (ComponentType)findViewById(R.id.IdOfTheComponent);
Sintaxis para el componente usado (botón de clic):
Botón btn = (Botón)findViewById(R.id.Button01);
- Paso 4: este paso implica configurar las operaciones para mostrar el mensaje Toast. Estas operaciones son las siguientes:
- Agregue el oyente en Button y este Button mostrará un mensaje de brindis.
btn.setOnClickListener(nueva Vista.OnClickListener() {});
- Ahora, cree un mensaje de brindis. El método Toast.makeText() es un método predefinido que crea un objeto Toast.
Sintaxis:
public static Toast makeText (Context context, CharSequence text, int duration)
Parámetros: Este método acepta tres parámetros:
- contexto: el primer parámetro es un objeto de contexto que se obtiene llamando a getApplicationContext().
Context context = getApplicationContext();
- texto: el segundo parámetro es el mensaje de texto que se mostrará.
CharSequence text=”Your text message here”
- duración: El último parámetro es el tiempo de duración del mensaje.
int duration=Toast.LENGTH_LONG;
Por lo tanto, el código para hacer un mensaje Toast es:
Toast.makeText(getApplicationContext(), "This a toast message", Toast.LENGTH_LONG);
- contexto: el primer parámetro es un objeto de contexto que se obtiene llamando a getApplicationContext().
- Muestre el mensaje Toast creado usando el método show() de la clase Toast.
Sintaxis:
public void show()
El código para mostrar el mensaje Toast:
Toast.makeText(getApplicationContext(), "This a toast message", Toast.LENGTH_LONG) .show();
- Agregue el oyente en Button y este Button mostrará un mensaje de brindis.
- Paso 5: Ahora ejecute la aplicación y opere de la siguiente manera:
- Cuando se abre la aplicación, muestra un botón «Hacer clic».
- Haga clic en el botón Hacer clic.
- Luego, «Este es un mensaje de brindis» se mostrará en la pantalla como un mensaje de brindis.
Código completo para mostrar un mensaje de brindis simple:
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <!-- add button for generating Toast message --> <Button android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_marginTop="209dp" android:onClick="onClick" android:text="Click" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" tools:ignore="OnClick" /> </android.support.constraint.ConstraintLayout>
MainActivity.java
package org.geeksforgeeks.simpleToast_Example; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends AppCompatActivity { // Defining the object for button Button btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Bind the components to their respective objects // by assigning their IDs // with the help of findViewById() method Button btn = (Button)findViewById(R.id.Button01); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // Displaying simple Toast message Toast.makeText(getApplicationContext(), "This a toast message", Toast.LENGTH_LONG) .show(); } }); } }
Cómo cambiar la posición de un mensaje Toast (con ejemplo)
Si es necesario establecer la posición de un mensaje Toast, se puede usar el método setGravity() .
public void setGravity (int gravity, int xOffset, int yOffset)
Parámetros: Este método acepta tres parámetros:
- gravedad: Esto establece la posición del mensaje Toast. Las siguientes constantes se pueden usar para especificar la posición de un Toast:
1.TOP 2.BOTTOM 3.LEFT 4.RIGHT 5.CENTER 6.CENTER_HORIZONTAL 7.CENTER_VERTICAL
Cada constante especifica la posición en los ejes X e Y, excepto la constante CENTRO que establece la posición centrada tanto para la dirección horizontal como para la vertical.
- xOffset: este es el valor de compensación que indica cuánto desplazar el mensaje Toast horizontalmente en el eje x.
- yOffset: este es el valor de desplazamiento que indica cuánto desplazar el mensaje Toast verticalmente en el eje y.
Por ejemplo:
1. Para mostrar el brindis en el centro:
tostado.setGravity(Gravity.CENTER, 0, 0);
2. Para mostrar el Toast en la parte superior, centrado horizontalmente:
tostado.setGravity(Gravity.TOP | Gravity.CENTER_HORIZONTALLY, 0, 0);
3. Para mostrar el Toast en la parte superior, centrado horizontalmente, pero 30 píxeles hacia abajo desde la parte superior:
tostado.setGravity(Gravity.TOP | Gravity.CENTER_HORIZONTALLY, 0, 30);
4. Para mostrar el Toast en la parte inferior, más a la derecha horizontalmente:
tostado.setGravity(Gravity.BOTTOM | Gravity.RIGHT, 0, 0);
Ejemplo: Aquí, en el siguiente ejemplo, el Toast se muestra en la posición inferior derecha.
Sintaxis:
Toast t = Toast.makeText(getApplicationContext(), "This a positioned toast message", Toast.LENGTH_LONG); t.setGravity(Gravity.BOTTOM | Gravity.RIGHT, 0, 0); t.show();
Código completo:
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <!-- add a button to display positioned toast message --> <Button android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_marginTop="209dp" android:onClick="onClick" android:text="Click" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" tools:ignore="OnClick" /> </android.support.constraint.ConstraintLayout>
MainActivity.java
package org.geeksforgeeks.positionedToast_Example; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Gravity; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends AppCompatActivity { // Defining the object for button Button btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Binding the components to their respective objects // by assigning their IDs // with the help of findViewById() method Button btn = (Button)findViewById(R.id.Button01); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // Displaying posotioned Toast message Toast t = Toast.makeText(getApplicationContext(), "This a positioned toast message", Toast.LENGTH_LONG); t.setGravity(Gravity.BOTTOM | Gravity.RIGHT, 0, 0); t.show(); } }); } }
Publicación traducida automáticamente
Artículo escrito por shamikhfaraz y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA