Supongo que has visto las nuevas pautas de diseño de Android, con el nuevo "Botón de acción flotante", también conocido como "FAB"
Por ejemplo este botón rosa:
Mi pregunta suena estúpida y ya he intentado muchas cosas, pero ¿cuál es la mejor manera de poner este botón en la intersección de dos diseños?
En el ejemplo anterior, este botón está perfectamente ubicado entre lo que podemos imaginar que es un ImageView y un diseño relativo.
Ya he probado muchos ajustes, pero estoy convencido de que hay una manera adecuada de hacerlo.
Respuestas:
Mejores prácticas:
compile 'com.android.support:design:25.0.1'
al archivo gradleCoordinatorLayout
como vista raíz.layout_anchor
a la FAB y configurarlo en la vista superiorlayout_anchorGravity
a la FAB y configúrelo en:bottom|right|end
fuente
CoordinatorLayout
ylayout_anchor
ylayout_anchorGravity
características, como la que se está usando, futuresimples .CoordinatorLayout
enfoque con esa biblioteca, mira . Y también hay un tenedor para versiones anteriores.Parece que la forma más limpia en este ejemplo es:
Ejemplo adaptado de la implementación de shamanland, use cualquier FAB que desee. Suponga que FAB tiene 64dp de altura, incluida la sombra:
fuente
FAB
por futuresimple : es bastante simple agregar y usar, ¡disfrútalo!Puede importar el proyecto de muestra de Google en Android Studio haciendo clic en Archivo> Importar muestra ...
Este ejemplo contiene una vista FloatingActionButton que hereda de FrameLayout.
Editar Con la nueva Biblioteca de diseño de soporte puede implementarla como en este ejemplo: https://github.com/chrisbanes/cheesesquare
fuente
Con AppCompat 22, el FAB es compatible con dispositivos más antiguos.
Agregue la nueva biblioteca de soporte en su build.gradle (aplicación):
Entonces puedes usarlo en tu xml:
Para usar
elevation
ypressedTranslationZ
propiedades,app
se necesita un espacio de nombres , así que agregue este espacio de nombres a su diseño:xmlns:app="http://schemas.android.com/apk/res-auto"
fuente
app
espacio de nombresAhora es parte de la Biblioteca oficial de soporte de diseño.
En tu gradle:
http://developer.android.com/reference/android/support/design/widget/FloatingActionButton.html
fuente
Pruebe esta biblioteca ( javadoc está aquí ), el nivel mínimo de API es 7:
Proporciona un widget único con la capacidad de personalizarlo a través de Theme, xml o java-code.
Es muy simple de usar. Están disponibles
normal
emini
implementados de acuerdo con el patrón de Acciones Promocionadas .Intenta compilar la aplicación de demostración . Hay un ejemplo exhaustivo: los temas claros y oscuros, que se usan con
ListView
, se alinean entre dos Vistas .fuente
Aquí hay una biblioteca adicional de botones de acción flotante para Android . Tiene muchas personalizaciones y requiere SDK versión 9 y superior.
Video demo completo
fuente
Manténgalo simple Agregando un botón de acción flotante usando TextView al dar un fondo xml redondeado. - Añadir compilación
com.android.support:design:23.1.1
al archivo gradleCircle Xml es
El diseño xml es
Haga clic aquí para ver cómo se verá
fuente
Agregue esto a su archivo gradle
Esto a su activity_main.xml
Puede encontrar el ejemplo completo con el proyecto de estudio de Android para descargar en http://www.ahotbrew.com/android-floating-action-button/
fuente
Aquí está el código de trabajo.
Yo uso appBarLayout para anclar mi flotanteActionButton. Espero que esto pueda ser útil.
CÓDIGO XML.
Ahora si pega el código anterior. verá el siguiente resultado en su dispositivo.
fuente