Красный круг вокруг пользовательского изображения кнопки Android - PullRequest
0 голосов
/ 27 апреля 2018

Я создал кнопку с плавающим действием и создал свое собственное изображение (для каждого размера dpi), но вокруг него есть красный кружок (изображение ниже). Вот мой xml, определяющий кнопку

<android.support.design.widget.FloatingActionButton
android:id="@+id/addplant"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:layout_margin="@dimen/fab_margin"
android:src="@mipmap/add_plant"/>

Вот мое исходное изображение (@ 192x192) и скриншот того, что я вижу в Android Studio. My Plus Sign

red border around image

Ответы [ 7 ]

0 голосов
/ 27 апреля 2018

Вы можете использовать цвет фона

Приложение: backgroundTint = "@ цвет / зеленый"

удалить цвет фона с изображения, использовать изображение без фона https://cdn.pixabay.com/photo/2016/10/10/01/49/plus-1727487__340.png

<android.support.design.widget.FloatingActionButton
    android:id="@+id/addplant"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="end|bottom"
    android:layout_margin="@dimen/fab_margin"
    app:backgroundTint="@color/green"
    android:src="@mipmap/add_plant"/>
0 голосов
/ 27 апреля 2018

Поскольку кнопка с плавающим действием окрашена атрибутом colorAccent в вашей теме . Вы можете установить оттенок фона на зеленый. Я обновил ваш код.

<android.support.design.widget.FloatingActionButton
android:id="@+id/addplant"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:layout_margin="@dimen/fab_margin"
android:backgroundTint="#4CAF50"
android:src="@mipmap/add_plant"/>
0 голосов
/ 27 апреля 2018

Просто используйте символ + в качестве источника. Вам не нужно передавать все изображение с зеленым фоном. Чтобы установить зеленый цвет фона, используйте app:backgroundTint="@color/green"

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

<android.support.design.widget.FloatingActionButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:backgroundTint="@color/green"
    android:src="@drawable/ic_plus" />
0 голосов
/ 27 апреля 2018

Вы можете попробовать ниже -

   <android.support.design.widget.FloatingActionButton
    ...
    ...
    android:src="@drawable/icon" // change backgroung icon
    app:backgroundTint="@android:color/transparent" // change background color
    />

установка оттенка на прозрачный заменит тот основной цвет, который вы указали в стилях.

0 голосов
/ 27 апреля 2018

Попробуйте использовать атрибут XML app: backgroundTint

<android.support.design.widget.FloatingActionButton
        android:id="@+id/addplant"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="end|bottom"
        android:layout_margin="@dimen/fab_margin"
        app:backgroundTint="@color/orange" // -----> your background color
        android:src="@mipmap/add_plant" />
0 голосов
/ 27 апреля 2018

Используйте это

Приложение: useCompatPadding = "истинный"

0 голосов
/ 27 апреля 2018

РЕДАКТИРОВАТЬ 2

Нет необходимости использовать app:backgroundTint juse USE android:scaleType="center" в вашем FloatingActionButton это будет работать

<android.support.design.widget.FloatingActionButton
    android:id="@+id/addplant"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="end|bottom"
    android:layout_margin="@dimen/fab_margin"
    android:scaleType="center"
    android:src="@mipmap/add_plant" />

OUTPUT

enter image description here

Попробуйте это

<android.support.design.widget.FloatingActionButton
    android:id="@+id/addplant"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="end|bottom"
    android:layout_margin="@dimen/fab_margin"
    android:src="@drawable/add_plant"/>

андроид: SRC = "@ вытяжка / add_plant"

<vector xmlns:android="http://schemas.android.com/apk/res/android"
        android:width="24dp"
        android:height="24dp"
        android:viewportWidth="24.0"
        android:viewportHeight="24.0">
    <path
        android:fillColor="#FFFFFF"
        android:pathData="M19,13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/>
</vector>

OUTPUT

enter image description here

EDIT

Для поддержки vector drawablea добавьте это в ваш build.gradle файл

defaultConfig {
        vectorDrawables.useSupportLibrary = true
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...