gpt4 book ai didi

android - 工具栏上后退按钮的自定义图像和颜色

转载 作者:行者123 更新时间:2023-12-05 00:16:52 24 4
gpt4 key购买 nike

我想在工具栏上显示“x”按钮而不是默认的后退箭头作为“主页”按钮。我搜索了如何使用自定义图像并且它有效,并且我搜索了如何使用后退箭头的特定颜色并且它有效。问题是,当我同时放置自定义图像和自定义颜色时,它会显示默认颜色黑色的图像,而我希望它是蓝色的。

这是工具栏的 xml:

<android.support.v7.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:id="@+id/toolbar"
android:theme="@style/ThemeToolbar">

这是 ThemeToolbar 样式:

<style name="ThemeToolbarDetails" parent="Theme.AppCompat.Light">
<item name="colorControlNormal">@color/blue</item>
<item name="homeAsUpIndicator">@drawable/close</item>
</style>

我尝试过 colorControlNormal、android:textColorSecondary,但在使用自定义图像时这些都不起作用。

最佳答案

首先,请遵循您的风格:<item name="homeAsUpIndicator">@drawable/close</item> .

然后,您有几种方法来解决颜色部分。

选项 1:如果您使用的是矢量绘图,则只需更改 XML 文件内的颜色会更容易。

选项 2:或者,您也可以通过编程方式为任何菜单项着色。获取Menu onCreateOptionsMenu() 中的对象方法,然后尝试下面的代码 fragment :

private void tintIcon(@NonNull MenuItem item, int color) {
Drawable drawable = item.getIcon();

if (drawable != null) {
final Drawable wrapped = DrawableCompat.wrap(drawable);
drawable.mutate();
DrawableCompat.setTint(wrapped, color);
item.setIcon(drawable);
}
}

选项 3:以编程方式更改绘图和颜色。

final Drawable myIcon =  ContextCompat.getDrawable(context, R.drawable.your_icon);
myIcon.setColorFilter(ContextCompat.getColor(context, R.color.your_color), PorterDuff.Mode.SRC_ATOP);
getSupportActionBar().setHomeAsUpIndicator(myIcon);

关于android - 工具栏上后退按钮的自定义图像和颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51895311/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com