studio example custom agregar activity android android-5.0-lollipop android-toast material-design

example - ¿Hay código para Snackbars en Android L o se espera que los implementemos nosotros mismos?



snackbar kotlin (6)

El sitio web de diseño de materiales menciona un nuevo elemento tipo Toast llamado Snackbar: http://www.google.com/design/spec/components/snackbars-and-toasts.html

La documentación del SDK de previsualización de Android L (no se puede enlazar, ya que solo se puede descargar) no tiene ninguna mención de Snackbar en la lista de clases o como modificador en la documentación de la clase Toast. ¿Me estoy perdiendo algo obvio o debo construir mi propio Snackbar.java?


Aquí es una forma sencilla de implementar snackbar en Android

Paso 1. Agrega la biblioteca de soporte 23 y compila tu proyecto con

compile ''com.android.support:appcompat-v7:23.0.1''

Paso 2. Agrega el diseño de coordenadas en tu archivo de actividad

<android.support.design.widget.CoordinatorLayout 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:id="@+id/coordinatorLayout" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> </android.support.design.widget.CoordinatorLayout>

Paso 3. Ahora agregue el siguiente código en su MainActivity.java para implementar snackbar

public class MainActivity extends AppCompatActivity { CoordinatorLayout coordinatorLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); coordinatorLayout = (CoordinatorLayout) findViewById(R.id.coordinatorLayout); ShowSnack(); } public void ShowSnack() { Snackbar snackbar = Snackbar.make(coordinatorLayout, "Snackbar Label", Snackbar.LENGTH_LONG); snackbar.setAction("Action", new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this, "Action", Toast.LENGTH_LONG).show(); } }); snackbar.setActionTextColor(Color.RED); View snackbarView = snackbar.getView(); snackbarView.setBackgroundColor(Color.DKGRAY); TextView textView = (TextView) snackbarView.findViewById(android.support.design.R.id.snackbar_text); textView.setTextColor(Color.YELLOW); snackbar.show(); } }

Espero que esto funcione para usted.

Para más tutorial de Android por favor siga este blog: Trinity Tuts




Snackbar es efectivamente solo un Crouton con algunos márgenes. Crouton en su forma actual solo admite la adición al inicio (0º elemento) de un ViewGroup, sin embargo, puede encontrar la mejora "strayan" en Crouton, DownUnderMode, en mi github . Solo tenga en cuenta que la biblioteca oficial Crouton y la versión DownUnderMode están un poco desincronizadas (que se espera que se solucionen en el año 2058 cuando se acepte la solicitud de extracción DownUnderMode).



Actualización 2015-05-29:

Google lanzó una Biblioteca de soporte de diseño que incluye un Snackbar y otros widgets de Diseño de materiales.

La biblioteca Snackbar mencionada en la respuesta original ahora está en desuso.

Respuesta original

Estoy seguro de que Google eventualmente lo incluirá en un futuro SDK, junto con un botón de acción flotante que también falta en la vista previa del SDK.

Como señaló @friedrich nietzche, implementé una biblioteca para incluir un Snackbar en su proyecto.

https://github.com/nispok/snackbar

¡Espero eso ayude!