Floating action button android как поменять цвет

Android меняет цвет кнопки плавающего действия

Я пытался изменить цвет кнопки плавающего действия материала, но безуспешно.

Я попытался добавить:

Но ничего из вышеперечисленного не сработало. Я также попробовал решения в предложенном дублирующем вопросе, но ни один из них не работает; кнопка оставалась зеленой и также стала квадратной.

PS Было бы также неплохо узнать, как добавить волновой эффект, но и этого не мог понять.

Как описано в документации , по умолчанию он принимает цвет, заданный в атрибуте styles.xml colorAccent .

Цвет фона этого представления по умолчанию соответствует цвету акцента вашей темы. Если вы хотите изменить это во время выполнения, вы можете сделать это через setBackgroundTintList (ColorStateList).

Если вы хотите изменить цвет

  • в XML с атрибутом приложения: backgroundTint
  • в коде с .setBackgroundTintList (ответ ниже ywwynm )

Как упоминалось в комментариях @Dantalian, если вы хотите изменить цвет значка для библиотеки поддержки проектирования до версии 22 (включительно) , вы можете использовать

Для библиотеки поддержки проектирования начиная с версии v23 вы можете использовать:

Также с androidX библиотеками вам нужно установить границу 0dp в макете xml:

Ответ Виджета Бадиганнавара правильный, но, ColorStateList как правило, он сложный, и он не сказал нам, как это сделать. Поскольку мы часто фокусируемся на изменении View цвета в нормальном и нажатом состоянии, я собираюсь добавить больше деталей:

Если вы хотите изменить FAB цвет в нормальном состоянии, вы можете просто написать

Если вы хотите изменить FAB цвет в нажатом состоянии, спасибо за Библиотеку поддержки дизайна 22.2.1 , вы можете просто написать

При установке этого атрибута, когда вы долго нажимаете на кнопку FAB , пульсация с вашим цветом появится в точке касания и раскроется на всю поверхность FAB . Пожалуйста, обратите внимание, что это не изменит FAB цвет в нормальном состоянии. Ниже API 21 (Lollipop) эффект ряби отсутствует, но FAB его цвет все равно будет меняться при нажатии.

Наконец, если вы хотите реализовать более сложный эффект для состояний, то вам нужно углубиться в этот вопрос ColorStateList , вот такой вопрос, обсуждающий его: Как мне создать ColorStateList программно? ,

ОБНОВЛЕНИЕ: Спасибо за комментарий @ Кейтлин. Чтобы удалить обводку FAB, используя backgroundTint в качестве цвета, вы можете установить app:borderWidth=»0dp» в xml.

Источник

Android изменение цвета кнопки плавающего действия

часами пытался изменить цвет кнопки плавающего действия материала, но безуспешно.

Я пытался добавить

но ничего из вышеперечисленного не сработало. Я также пробовал решения в «дублировать вопрос», но ни один из них не работает, кнопка осталась зеленой и также стала квадратной.

Я хотел бы получить подробный ответ, спасибо.

П. С. было бы неплохо также знать, как добавить эффект пульсации, не могла понять что либо.

18 ответов

как описано в документация по умолчанию он принимает цвет в стили.в XML атрибут colorAccent.

цвет фона этого представления по умолчанию соответствует colorAccent вашей темы. Если вы хотите изменить это во время выполнения, вы можете сделать это через setBackgroundTintList(ColorStateList).

Если вы хотите изменить цвет

  • в XML с атрибутом app:backgroundTint
  • в коде .setBackgroundTintList (ответ ниже ywwynm)
Читайте также:  Zombie castaways для андроид

Как @Dantalian писал в комментариях, если вы хотите изменить цвет, вы можете использовать

Vijet Badigannavar ответ правильный, но с помощью ColorStateList обычно сложнее и он не сказал нам, как это делать. Так как мы часто фокусируемся на изменении View цвет в нормальном и нажатом состоянии, я собираюсь добавить более подробную информацию:

если вы хотите изменить FAB цвет в нормальном состоянии, вы можете просто написать

если вы хотите изменить FAB цвет в отжатом положении, спасибо для библиотеки поддержки дизайна 22.2.1, вы можете просто написать

установив этот атрибут, при длительном нажатии кнопки FAB , рябь с вашим цветом появится в вашей точке касания и раскроется на всю поверхность FAB . Пожалуйста, обратите внимание, что это не изменит FAB цвет в нормальном состоянии. Ниже API 21 (Lollipop) нет эффекта пульсации, но FAB ‘S цвет будет по-прежнему меняться, когда вы нажимаете его.

наконец, если вы хотите реализовать более сложный эффект для состояний, то вы должны глубоко копать в ColorStateList , вот так вопрос обсуждаем: как создать ColorStateList программно?.

обновление: Спасибо за комментарий @Kaitlyn. Чтобы удалить ход FAB, используя backgroundTint в качестве цвета, вы можете установить app:borderWidth=»0dp» в вашем xml.

As Василь Валча отметил в комментарии это проще, чем кажется, но есть тонкая разница, которую я не замечал в своем XML.

обратите внимание, что это:

и не

Если вы пытаетесь изменить цвет FAB с помощью приложения, есть некоторые проблемы. рамка кнопки имеет разный цвет, так что вы должны сделать:

Источник

Изменение цвета плавающей кнопки Android

Старался часами менять цвет кнопки Material Floating Action, но безуспешно.

Я попытался добавить

Но ничего из этого не было. Я также пробовал решения в «дублированном вопросе» , но никто из них не работает, кнопка оставалась зеленой, а также стала квадратом.

Я хотел бы получить подробный ответ, спасибо.

PS Было бы также хорошо знать, как добавить эффект пульсации, и не мог этого понять.

Как описано в документации , по умолчанию он принимает цвет, установленный в атрибуте styles.xml colorAccent .

Цвет фона этого представления по умолчанию соответствует цвету вашей темы. Если вы хотите изменить это во время выполнения, вы можете сделать это через setBackgroundTintList (ColorStateList).

Если вы хотите изменить цвет

  • В XML с приложением атрибута : backgroundTint
  • В коде с .setBackgroundTintList (ответ ниже по ywwynm )

Как отметил @Dantalian в комментариях, если вы хотите изменить цвет значка, вы можете использовать

Ответ Vijet Badigannavar правильный, но использование ColorStateList обычно затруднено, и он не рассказал нам, как это сделать. Поскольку мы часто фокусируемся на изменении цвета View в нормальном и нажатом состоянии, я собираюсь добавить дополнительные сведения:

Если вы хотите изменить цвет FAB в нормальном состоянии, вы можете просто написать

Если вы хотите изменить цвет FAB в нажатом состоянии, спасибо Библиотеке поддержки дизайна 22.2.1 , вы можете просто написать

Установив этот атрибут, когда вы долго нажимаете FAB , рябь с вашим цветом появится в вашей точке касания и откроется на всю поверхность FAB . Обратите внимание, что он не изменит цвет FAB в нормальном состоянии. Ниже API 21 (Lollipop) эффект пульсации отсутствует, но цвет FAB будет по-прежнему изменяться, когда вы нажимаете его.

Читайте также:  Баланс звука для андроид

Наконец, если вы хотите реализовать более сложный эффект для состояний, тогда вы должны глубоко ColorStateList в ColorStateList , вот вопрос SO, обсуждающий его: Как я могу создать ColorStateList программным путем? ,

ОБНОВЛЕНИЕ: Спасибо за комментарий @ Kaitlyn. Чтобы удалить ход FAB с использованием backgroundTint в качестве его цвета, вы можете установить app:borderWidth=»0dp» в свой xml.

Как отметил в комментарии Василий Вълчев, это проще, чем кажется, но есть тонкая разница, которую я не замечал в своем XML.

И не

Если вы пытаетесь изменить цвет FAB с помощью приложения, есть какая-то проблема. Кадр кнопки имеет разный цвет, так что вы должны сделать:

И в коде установите цвет:

FAB окрашен в соответствии с вашим colorAccent .

Документ предполагает, что по умолчанию он принимает цвет @ / акцент. Но мы можем переопределить его по коду, используя

Минимальная версия API для использования этой библиотеки – 15, поэтому вам необходимо ее обновить! Если вы не хотите это делать, вам нужно определить пользовательскую возможность рисования и украсить ее!

Другие решения могут работать. Это подход 10-фунтовых горилл, который имеет то преимущество, что он широко применим в этом и подобных случаях:

Обратите внимание, что вы добавляете цвета в res / values ​​/ color.xml и включаете атрибут в свой fab

Благодаря автозаполнению. Мне повезло после нескольких ударов и испытаний:

– или – (оба в основном одно и то же)

Это работало для меня в версии API 17 с библиотекой дизайна 23.1.0.

У меня такая же проблема, и все это хватало моих волос. Спасибо за это https://stackoverflow.com/a/35697105/5228412

Что мы можем сделать..

Он отлично работает для меня и желает других, которые доберутся сюда.

То, что нам не хватает, заключается в том, что перед установкой цвета на кнопке важно работать с тем значением, которое вы хотите для этого цвета. Таким образом, вы можете перейти к значениям> цвет. Вы найдете по умолчанию, но вы также можете создавать цвета, обходя и вставляя их, меняя цвета и имена. Затем … когда вы идете изменить цвет плавающей кнопки (в activity_main), вы можете выбрать тот, который вы создали

Exemple – код на значениях> цвета с цветами по умолчанию + еще 3 цвета, которые я создал:

Теперь моя плавающая кнопка действия с цветом, который я создал и назвал «corPar»:

Это сработало для меня. Удачи!

Если вы используете Xamarin для разработки приложений для Android, используйте ниже код для изменения цвета плавающей кнопки.

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

Источник

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

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

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

Читайте также:  Андроид с емким аккумулятором

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

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

Может быть, поздно, но может помочь.

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

Вы должны использовать

  • В XML с attribute app:backgroundTint
  • В коде с .setBackgroundTintList прочитайте этот ответ

Изменение цвета плавающей кнопки Android

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

Проверьте принятый ответ здесь: цвет кнопки плавающей кнопки Android с плавающей запятой

Если вы хотите изменить цвет

  • В XML с приложением атрибута : backgroundTint
  • В коде с .setBackgroundTintList

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

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

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

В месте # 8393ca добавьте любой цветовой код, который вы хотите

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

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

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

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

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

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

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

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

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

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

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

Источник

Floating Action Button — летающая кнопка из Material Design

Данная статья продолжает цикл статей о внедрении MaterialDesign в ваше приложение. На этот раз статья посвящена абсолютно новому элементу, которого не было не было ни в одной другой ОС — FloatingActionButton (FAB).

FAB — это круглая кнопка, плавающая над интерфейсом и отражающая главное действие в приложении. Google не добавила FAB в SupportLibrary, поэтому нам придется воспользоваться сторонними решениями. Существует достаточно большое количество библиотек, реализующих данный функционал, но многие из них работают криво. Я буду рассматривать вот эту библиотеку.

Кнопка добавляется на экран с помощью XML. Корневым для кнопки обязательно должен быть FrameLayout.

Разъясню значения атрибутов FloatingActionButton:

android:src — картинка, которая будет отображаться на кнопке.
fab:fab_colorNormal — цвет кнопки в обычном состоянии.
fab_colorPressed — цвет кнопки в нажатом состоянии.
fab_colorRipple — цвет ripple-эффекта осле нажатия.

Инициализируем список и кнопку в onCreate:

Я не буду приводить код ListViewAdapter, т. к. он не относится к теме статьи, но вы можете в исходниках примера. Ширина и высота кнопки кнопки жестко прописаны и равны 56dp для нормальной и 40dp для мини-кнопки, как указано в гайдлайнах Google .

Теперь привяжем список к кнопке:

Помимо ListView можно прикрепить кнопку к RecyclerView или ScrollView методами attachToRecyclerView или attachToScrollView.

Чтобы сделать кнопку маленькой нужно добавить атрибут fab_type в XML кнопки:

или прописать это к коде:

Обработка нажатий происходит при помощи обычного OnClickListener’а.

Источник

Оцените статью