web-dev-qa-db-fra.com

Comment changer la couleur de fond de FAB

J'utilise un bouton d'action flottant et je veux changer la couleur de fond.

Voici mon code 

    <Android.support.design.widget.FloatingActionButton
        Android:id="@+id/btnfab"
        Android:layout_width="48dp"
        Android:layout_height="48dp"
        Android:layout_alignParentBottom="true"
        Android:layout_alignParentEnd="true"
        Android:layout_alignParentRight="true"
        Android:layout_gravity="right|center_vertical"
        Android:layout_marginBottom="20dp"
        Android:src="@drawable/search" />

Voici le code que j'utilise pour essayer d'atteindre cet objectif:

1- Android:background="@color/mycolor"
2- Android:backgroundTint="@color/white"

Je reçois également des coins sur mon FAB comme indiqué dans l'image. Comment est-ce que je devrais enlever ces ombres de coin?

 enter image description here

18
Ritesh

Vous pouvez supprimer les ombres problématiques en ajoutant ces attributs à votre FloatingActionButton:

app:borderWidth="0dp"
app:elevation="6dp"

Il n'y a pas de couleur de fond pour FloatingActionButton. Vous modifiez cette couleur de composant par:

app:backgroundTint="@color/YOURCOLOR"

N'oubliez pas d'avoir dans votre mise en page parent la ligne suivante:

xmlns:app="http://schemas.Android.com/apk/res-auto"
30
Damian Kozlak

Déclarez ce qui suit dans le style de votre application:

<item name="colorAccent">@color/yourColor</ item> 

à votre santé

9
nikk

Veuillez mettre à jour votre support technique Android et vos bibliothèques de conception de matériel Android dans build.gradle.

(Ajoutez s'il vous plaît votre fichier build.gradle ci-dessus)

Selon ces sites: 

et Référence des développeurs Android vous devez utiliser uniquement:

   Android:backgroundTint="@color/white"

Si je me souviens bien, cette ombre est un problème bien connu pour les boutons d'action flottants, alors jetez un œil à ces bibliothèques supplémentaires: 

http://Android-arsenal.com/tag/173

ce qui peut vous aider à remplacer cet élément cassé.

Vérifiez aussi:

J'espère que ça vous aidera.

6
piotrek1543

Commencez par créer un style dans votre styles.xml:

<style name="PrimaryActionButton" parent="Theme.AppCompat.Light">
<item name="colorAccent">@color/colorPrimary</item>
</style>

Puis définissez le thème de votre fab à ce style:

<Android.support.design.widget.FloatingActionButton
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:src="@drawable/ic_favorite_white_24dp"
Android:theme="@style/PrimaryActionButton"
app:fabSize="normal"
app:rippleColor="@color/colorAccent" />

Vous pouvez voir la description complète dans: Android: bouton d'action flottante

0
AK 12