Измените цвет кнопки Floating Action от Appompap 22.2.0 программно

Я хотел бы знать, как изменить цвет кнопки Floating Action в библиотеке поддержки 22.2.0? Я пробовал

button.setBackgroundColor(color);

но ясно, что это изменяет выделение кнопки и превращается в квадрат.

Теперь мне интересно, как изменить цвет, но только цвет, не касаясь формы?

Заранее спасибо

Ответ 1

Возможно, поздно, но может помочь.

 fab.setBackgroundTintList(ColorStateList.valueOf(Color
                    .parseColor("#33691E")));

и проанализируйте фактический цветовой код из списка цветов Здесь вы можете найти

Ответ 2

Создайте ColorStateList и установите его как оттенок фона:

button.setBackgroundTintList(new ColorStateList(new int[][]{new int[]{0}}, new int[]{color}));

Ответ 4

Создайте ресурс цвета в colors.xml (R.color.purple в этом случае) и используйте его так:

floatingActionButton.setBackgroundTintList(getResources().getColorStateList(R.color.purple));

Ответ 5

Метод 1: изменение цвета плавающей панели действий (fab) в xml:

Чтобы изменить цвет плавающей панели действий (fab), просто выполните этот шаг

просто добавьте "app: backgroundTint =" # colorcode "в xml плавающей панели действий (fab).. Например

app:backgroundTint="#8393ca"

в месте # 8393ca добавьте любой желаемый цветовой код

Пример как usaage..

<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|end"
    android:layout_margin="@dimen/fab_margin"
    app:backgroundTint="#8393ca"
    android:src="@drawable/send" />

Способ 2: программно изменить цвет плавающей панели действий

просто добавьте эту строку в свой код

Сначала создайте красный цвет в ваших значениях = > цвета, затем добавьте этот код в свою активность, создайте

fab.setBackgroundTintList(getResources().getColorStateList(R.color.red));

                                or

fab.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#33691E")));

кредиты: http://androidrace.com/2016/12/12/how-to-change-fabfloating-action-bar-color-android/

Ответ 6

Чтобы сделать это обратно совместимым:

DrawableCompat.setTintList(DrawableCompat.wrap(fab.getDrawable()), tintColor); // <- icon
DrawableCompat.setTintList(DrawableCompat.wrap(fab.getBackground()), backgroundTintColor); // <- background

Ответ 8

имя атрибута backgroundTint

поэтому я думаю, что есть функция с именем

button.setBackgroundTint(color)

Ответ 9

если вы используете библиотеку кнопок с плавающим действием из https://github.com/Clans/FloatingActionButton, используйте этот

fab.setColorNormal(getResources().getColor(R.color.fab_color1));

Ответ 10

Попробуйте этот код. Он добавит оттенок к фоновому ресурсу.

button.setBackgroundTintList(getResources().getColorStateList(R.color.yourColor));

Ответ 11

просто используйте эту строку в вашем XML файле под кнопкой плавающего действия

android:backgroundTint="#96989A"

Ответ 12

Фон XML: цвет оттенка будет всегда перекрывать любой заданный вами цвет. программно. Поэтому для придания цвета программным способом удалите строку android:backgroundTint="#96989A" из файла XML и используйте:

button.setBackgroundTintList(getResources().getColorStateList(R.color.yourColor));

Ответ 13

Если вы используете Xamarin для Android-приложения, попробуйте ниже код

FloatingActionButton fa = root.FindViewById<FloatingActionButton>(Resource.Id.fabback);
            Android.Content.Res.ColorStateList csl = new Android.Content.Res.ColorStateList(new int[][] { new int[0] }, new int[]{Android.Graphics.Color.ParseColor("#000000") });
            fab.BackgroundTintList= csl;

"# 000000", используемый для черного цвета, вы можете изменить в соответствии с вашими требованиями.