Cómo agregar un Snackbar en Android

Snackbar proporciona comentarios ligeros sobre una operación. El mensaje aparece en la parte inferior de la pantalla en dispositivos móviles y en la parte inferior izquierda en dispositivos más grandes. Snackbar aparece sobre todos los elementos de la pantalla. Pero ningún componente se ve afectado por ello. Tener un CoordinatorLayout en su jerarquía de vista le permite a Snackbar habilitar ciertas funciones, como deslizar para descartar y mover automáticamente los widgets. Snackbar es similar a Toast pero la única gran diferencia es que se puede agregar una acción con Snackbar.

Acercarse:

  1. Agregue la biblioteca de soporte en el archivo build.gradle y agregue la dependencia de Material Design en la sección de dependencias. Es una parte de Material Design , por eso tenemos que agregar una dependencia.

    dependencies {
        implementation 'com.google.android.material:material:1.1.0'
    }
  2. Ahora agregue el siguiente código en el archivo activity_main.xml . Creará un botón llamado Open Snackbar .

    actividad_principal.xml

    <?xml version="1.0" encoding="utf-8"?>
    <androidx.coordinatorlayout.widget.CoordinatorLayout
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/layout"
        tools:context=".MainActivity">
      
        <Button
            android:layout_gravity="center"
            android:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="18sp"
            android:textAllCaps="false"
            android:text="Open Snackbar"
             />
      
    </androidx.coordinatorlayout.widget.CoordinatorLayout>
  3. Ahora agregue el siguiente código en el archivo MainActivity.java . Esto definirá el botón y agregará un onClickListener al botón. En onClickListener se crea y se llama un Snackbar. Entonces, cada vez que se hace clic en el botón, onClickListener crea una barra de bocadillos y la llama y el usuario ve el mensaje. Este snackbar contiene una acción y, si se hace clic, mostrará un brindis.

    MainActivity.java

    package org.geeksforgeeks.gfgsnackbar;
      
    import androidx.appcompat.app.AppCompatActivity;
    import androidx.coordinatorlayout
        .widget.CoordinatorLayout;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.Toast;
      
    import com.google.android.material
        .snackbar
        .Snackbar;
      
    public class MainActivity
        extends AppCompatActivity {
      
        Button button;
        CoordinatorLayout layout;
      
        @Override
        protected void onCreate(
            Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
      
            button = findViewById(R.id.button);
            layout = findViewById(R.id.layout);
      
            button.setOnClickListener(
                new View.OnClickListener() {
                    @Override
                    public void onClick(View v)
                    {
      
                        // Create a snackbar
                        Snackbar snackbar
                            = Snackbar
                                  .make(
                                      layout,
                                      "Message is deleted",
                                      Snackbar.LENGTH_LONG)
                                  .setAction(
                                      "UNDO",
      
                                      // If the Undo button
                                      // is pressed, show
                                      // the message using Toast
                                      new View.OnClickListener() {
                                          @Override
                                          public void onClick(View view)
                                          {
                                              Toast
                                                  .makeText(
                                                      MainActivity.this,
                                                      "Undo Clicked",
                                                      Toast.LENGTH_SHORT)
                                                  .show();
                                          }
                                      });
      
                        snackbar.show();
                    }
                });
        }
    }

Producción:

Publicación traducida automáticamente

Artículo escrito por madhavmaheshwarimm20 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *