Android - 更改 ImageButton 上的发送图标颜色
Android - change send icon's color on ImageButton
如何更改此 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" />
我想用灰色代替当前的白色。
你可以把你的costomize图像放在你的drawable中,然后你可以将它用作图像src
添加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" />
将此图像放入您的可绘制文件夹中,然后
将其作为图像保存在可绘制对象中
<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" />
下载图标放在可绘制文件夹中
<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" />
您可以在图像视图上使用 colorFilter 并可以赋予任何颜色运行时间。
iv.setColorFilter(getResources().getColor(R.color.color_gray),
PorterDuff.Mode.SRC_ATOP);
添加tint属性,你可以设置任何你想要的颜色。您还可以设置 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" />
您可以使用以下代码以编程方式更改它:
Drawable drawableTint = DrawableCompat.wrap(getResources()
.getDrawable(imageResID)).mutate();
DrawableCompat.setTint(drawableTint,
ContextCompat.getColor(getContext(), R.color.colorTint));
yourImageButton.setImageDrawable(drawableTint);
如何更改此 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" />
我想用灰色代替当前的白色。
你可以把你的costomize图像放在你的drawable中,然后你可以将它用作图像src
添加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" />
将此图像放入您的可绘制文件夹中,然后
将其作为图像保存在可绘制对象中
<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" />
下载图标放在可绘制文件夹中
<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" />
您可以在图像视图上使用 colorFilter 并可以赋予任何颜色运行时间。
iv.setColorFilter(getResources().getColor(R.color.color_gray),
PorterDuff.Mode.SRC_ATOP);
添加tint属性,你可以设置任何你想要的颜色。您还可以设置 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" />
您可以使用以下代码以编程方式更改它:
Drawable drawableTint = DrawableCompat.wrap(getResources()
.getDrawable(imageResID)).mutate();
DrawableCompat.setTint(drawableTint,
ContextCompat.getColor(getContext(), R.color.colorTint));
yourImageButton.setImageDrawable(drawableTint);