代码之家  ›  专栏  ›  技术社区  ›  Farzan Najipour

Android-更改ImageButton上发送图标的颜色

  •  12
  • Farzan Najipour  · 技术社区  · 9 年前

    如何更改此上发送图标的默认颜色 ImageButton ?

    <ImageButton
        android:id="@+id/ImageButton1"
        android:layout_width="0dp"
        android:paddingTop="5dip"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:adjustViewBounds="true"
        android:background="@null"
        android:gravity="right"
        android:scaleType="center"
        android:src="@android:drawable/ic_menu_send" />
    

    enter image description here

    我想用灰色代替当前的白色。

    7 回复  |  直到 4 年前
        1
  •  41
  •   Tharindu Welagedara    9 年前

    添加色调属性,您可以设置所需的任何颜色。此外,您还可以设置android:tintMode属性(说明颜色应如何应用)。

     <ImageButton
            android:id="@+id/ImageButton1"
            android:layout_width="64dp"
            android:layout_height="64dp"
            android:adjustViewBounds="true"
            android:background="@null"
            android:gravity="right"
            android:paddingTop="5dip"
            android:scaleType="center"
            android:tint="@color/colorAccent"
            android:src="@android:drawable/ic_menu_send" />
    
        2
  •  7
  •   Wasim K. Memon    9 年前

    您可以在图像视图上使用colorFilter,并可以提供任何颜色运行时。

    iv.setColorFilter(getResources().getColor(R.color.color_gray),
                    PorterDuff.Mode.SRC_ATOP);
    
        3
  •  4
  •   Reaz Murshed vir us    9 年前

    添加 android:tint 属性设置图标颜色。

    <ImageButton
        android:id="@+id/ImageButton1"
        android:layout_width="0dp"
        android:paddingTop="5dip"
        android:layout_weight="1"
        android:tint="@color/background_red"
        android:layout_height="wrap_content"
        android:adjustViewBounds="true"
        android:background="@null"
        android:gravity="right"
        android:scaleType="center"
        android:src="@android:drawable/ic_menu_send" />
    
        4
  •  2
  •   Boken forcewill    4 年前

    enter image description here

    将此图像放在可绘制文件夹中,然后

    将其保存为可绘制的图像

    <ImageButton
            android:id="@+id/ImageButton1"
            android:layout_width="0dp"
            android:paddingTop="5dip"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            android:background="@null"
            android:gravity="right"
            android:scaleType="center"
            android:src="@android:drawable/img" />
    
        5
  •  2
  •   Fakhriddin Abdullaev    2 年前

    您可以使用以下代码以编程方式更改它:

    Drawable drawableTint = DrawableCompat.wrap(getResources()
            .getDrawable(imageResID)).mutate();
    DrawableCompat.setTint(drawableTint, 
            ContextCompat.getColor(getContext(), R.color.colorTint));
    
    yourImageButton.setImageDrawable(drawableTint);
    
        6
  •  1
  •   Boken forcewill    4 年前

    下载图标放在可抽取文件夹中

    Download Icon

    <ImageButton
            android:id="@+id/ImageButton1"
            android:layout_width="0dp"
            android:paddingTop="5dip"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            android:background="@null"
            android:gravity="right"
            android:scaleType="center"
            android:src="@drawable/downloded_icon_send" />
    
        7
  •  -2
  •   krishna    9 年前

    你可以把你的定制图像放在你的绘图中,然后你可以把它用作图像src