围绕自定义Android按钮图像的红圈

时间:2018-04-27 06:01:35

标签: android xml image android-layout android-studio

我创建了一个浮动动作按钮,并制作了我自己的图像(每个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 :(得分:3)

您可以尝试下面的内容 -

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

将色调设置为透明将覆盖您在样式中指定的粉红色。

答案 1 :(得分:2)

尝试使用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" />

答案 2 :(得分:1)

编辑2

无需在app:backgroundTint中使用android:scaleType="center" juse USE 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" />

<强>输出

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 =&#34; @可绘制/ add_plant&#34;

<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>

<强>输出

enter image description here

修改

要支持 vector drawablea,请在 build.gradle 文件中添加

defaultConfig {
        vectorDrawables.useSupportLibrary = true
 }

答案 3 :(得分:1)

使用此

  

应用程式:useCompatPadding =&#34;真&#34;

答案 4 :(得分:1)

只需使用 + 符号作为来源。您无需以绿色背景传递整个图像。要设置绿色背景颜色,请使用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" />

答案 5 :(得分:0)

您可以使用背景颜色

  

应用程式: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"/>

答案 6 :(得分:0)

因为“浮动操作”按钮由theme中的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"/>