Notificaciones emergentes
Importante
En este artículo se describen la funcionalidad y las instrucciones que se encuentran en versión preliminar pública, por lo que pueden modificarse de forma sustancial antes de que estén disponibles con carácter general. Microsoft no ofrece ninguna garantía, expresa o implícita, con respecto a la información que se ofrece aquí.
Información general
SnackbarContainer
es un objeto FrameLayout personalizado con un elemento CoordinatorLayout como elemento secundario que se puede usar como contenedor para las notificaciones emergentes.
Este contenedor es compatible con los dispositivos plegables y se puede usar en ellos, pero también en dispositivos normales. El mensaje se mostrará siempre en la parte inferior de la pantalla a una distancia fija de 25 píxeles desde los bordes de la pantalla.
Con la información de WindowManager, este contenedor mueve su elemento secundario CoordinatorLayout a donde el desarrollador necesite: en la primera pantalla, en la segunda pantalla o en toda la pantalla. En otros escenarios, puede usar la clase Snackbar
directamente.
Importación de la biblioteca en el proyecto
Asegúrese de que el repositorio
mavenCentral()
está en el archivo build.gradle de nivel superior:allprojects { repositories { google() mavenCentral() } }
Agregue esta dependencia al archivo build.gradle del nivel del módulo:
dependencies { implementation "com.microsoft.device.dualscreen:snackbar:1.0.0-alpha2" }
Si el proyecto se crea mediante Java, tendrá que agregar una dependencia kotlin-stdlib al archivo build.gradle del nivel del módulo (debido a que la biblioteca de notificaciones emergentes se creó mediante Kotlin).
dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" }
Procedimiento para mostrar notificaciones emergentes de doble pantalla
Una vez agregado el paquete, siga estos pasos para implementar las notificaciones emergentes de doble pantalla:
Agregue el objeto
SnackbarContainer
en la parte inferior de la vista raízActivity
oFragment
:<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" <com.microsoft.device.dualscreen.snackbar.SnackbarContainer android:id="@+id/snackbar_container" android:layout_width="match_parent" android:layout_height="wrap_content" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout>
Con una instancia de
SnackbarContainer
, puede mostrar la claseSnackbar
mediante este fragmento de código. El parámetrosnackbarContainer
es una instancia deSnackbarContainer
, el parámetromessage
es el texto que se va a mostrar yLENGTH_LONG
es la duración de la visualización. La funciónshow
es una función de extensión que se usa para mostrar la claseSnackbar
dentro del objetoSnackbarContainer
indicado en la posición especificada.
SnackbarPosition
Los valores posibles para el parámetro position
son los siguientes:
SnackbarPosition.START
SnackbarPosition.END
SnackbarPosition.BOTH
Estos valores se explican detalladamente a continuación.
SnackbarPosition.START
Las notificaciones emergentes se mostrarán en la parte inferior de la primera área de visualización:
SnackbarPosition.END
Las notificaciones emergentes se mostrarán en la segunda área de visualización:
SnackbarPosition.BOTH
Las notificaciones emergentes se mostrarán en la parte inferior del área de visualización completa:
Muestra
Puede echar un vistazo al código de la aplicación de ejemplo de notificaciones emergentes para ver todos estos comportamientos.