Home / Desarrollo Android / El arsenal de Android – Animaciones

El arsenal de Android – Animaciones

El comportamiento para hacer que una vista se expanda desde la esquina

Uso

El uso es similar a BottomSheetBehavior

Una vista simple con comportamiento en xml se verá así: [19659005] < androidx .coordinatorlayout.widget.CoordinatorLayout
Android : id = " @ + id / coordinator " [19659009] Android: layout_width = [19659008] ] " match_parent "
Android : layout_height = " match_parent " >

< FrameLayout
Android : id = " @ + id / corner_behavior_container " [19659017] Android : layout_width = " match_parent "
Android : layout_height = " match_parent "
aplicación : backgroundTint = " @ colore / colorPrimary "
aplicación : behaviour_expanded_width = " 175dp " [19659017] aplicación : behaviour_horizontal_peekHeight = " 94dp " [19659017] aplicación : behaviour_peekHeight = " 60dp " [19659017] aplicación : layout_behavior = " com.github.heyalex.cornersheet.behavior.CornerSheetBehavior "
aplicación : shapeAppearanceOverlay = " @ style / ShapeAppearanceOverlay.CornerShape "
herramientas : ignorar = " MissingPrefix " >

< androidx .appcompat.widget.Toolbar
Android : layout_width = " match_parent "
Android : layout_height = " wrap_content "
Android : fondo de pantalla = " @android: color / transparente "
aplicación : título = " Muestra de esquina "
aplicación : titleTextColor = " @android: color / blanco " />

</ FrameLayout >

</ androidx .coordinatorlayout.widget.CoordinatorLayout>

Puede usar los siguientes atributos a la vista con CornerSheetBehavior.

Propiedad Tipo Predeterminado behaviour_horizontalExpandingRatio float 0.2f
behaviour_expanded_width
19659085] 0dp
behaviour_horizontal_peekHeight [1965] 9090 [9090] Personaliza la forma de la esquina con shapeAppearanceOverlay atributo:

  < estilo ] [1965901]   ShapeAppearanceOverlay.CornerShape  " padre  =  " " 
>
< elemento   nombre  =   " cornerSizeTopLeft " > 30dp </  elemento 
>
< elemento   nombre  =   " cornerFamily " > redondeado </  elemento 
>
</  estilo > 

Hay 3 estados de CornerSheetBehavior:

Estado Descripción
CornerSheetBehavior.STATE_EXPANDED expandido horizontalmente en behaviour_expanded906527]] CornerSheetBeye comportamiento. ] expandido horizontalmente en behaviour_horizontal_peekHeight valor
CornerSheetBehavior.STID_HIDDEN se esconde [1945904] CornerSheetBehavior:

 [1945behaviour=ExpandingRatio

behaviour.horizontalState  =   CornerSheetBehavior .  ESTADO_EXPANDIDO 

behaviour.expandedWidth  =   170 
 .dp ()
behaviour.setHorizontalPeekHeight ( 60  .dp (), animado  =   verdadero )   // se animará si el estado horizontal es CornerSheetBehavior.STATE_COLLAP1] 19 [19659073]  Simplemente verifique el formulario de la aplicación con "Ejemplo de comportamiento":

También hay una opción para usar una vista que puede contener un encabezado y un contenido:

  < androidx 
 .coordinatorlayout.widget.CoordinatorLayout
 Android :  id  =   " @ + id / coordinator " [19659009]  Android:  layout_width = [19659008]  ] " match_parent " 
  Android :  layout_height  =   " match_parent " 

>

< com 
 .github.heyalex.CornerDrawer
 Android :  id  =   " @ + id / corner_drawer 
" [19659017]  Android :  layout_width  =   " match_parent " 
 Android :  layout_height  =   " match_parent " 
 Android :  clicable  =   " verdadero " 
 aplicación :  behaviour_horizontal_peekHeight  =   " 58dp 
" [19659017]  aplicación :  content_color  =   " @ color / corner_drawer_content_color " 
 aplicación :  content_view  =   " @ layout / content_layout " 
 aplicación :  header_color  =   " @ color / corner_drawer_header_color " 
 aplicación :  header_view  =   " @ layout / header_layout " 
 aplicación :  layout_behavior  =   " com.github.heyalex.cornersheet.behavior.CornerSheetHeaderBehavior " 
 aplicación :  shapeAppearanceOverlay  =   " @ style / ShapeAppearanceOverlay.CornerShape " 
 />
</  androidx  .coordinatorlayout.widget.CoordinatorLayout> 

Con CornerDrawer no es necesario establecer behaviour_peekHeight y behaviour_expanded_width cuando el encabezado se asignará automáticamente [194590[1945] [1945] ] se inflará.

Puede usar un atributo en el comportamiento descrito a continuación y los siguientes atributos en CornerDrawer

Propiedad Tipo Tipo
header_view referencia -1
header_color [19659078] referencia #FFF
content_view referencia -1
content_color referencia #FFF

La vista previa principal se realiza con CornerDrawer simplemente verifique el módulo de la aplicación con "Support Sample"

Integración

Esta biblioteca está disponible en jitpack por lo que debe agregar este repositorio a su raíz de build.gradle: [19659189] todos los proyectos {
repositorio {
.. .
maven {url & # 39; https://jitpack.io & # 39; }
}
}

Agregue una de las siguientes dependencias:

  dependencias {

  //  solo CornerSheetBehavior 

implementación   & # 39;  com.github.HeyAlex.CornerSheet: core: v1.0.0  & # 39; 

  //  CornerSheetBehavior y CornerDrawer 

Implementación   & # 39;  com.github.HeyAlex.CornerSheet: cajón: v1.0.0  & # 39; 

} 

Muestras

Puede encontrar un ejemplo en el módulo de la aplicación, para comprender la funcionalidad de la biblioteca o simplemente obtener un APK aquí

.

About AndroidEditor

Check Also

Blog para desarrolladores de Android: Android 11: Vista previa del desarrollador 2

publicado por Dave Burke, vicepresidente de ingeniería Han sido algunos meses difíciles para muchos en …

Deja un comentario

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