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:
- 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'
}
- 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
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
>
- 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