Gunnar Asked: 2020-03-29 14:18:05 +0800 CST 2020-03-29 14:18:05 +0800 CST 2020-03-29 14:18:05 +0800 CST 更改 Android 中 AppBar 的颜色按钮 772 如何更改 AppBar 按钮的颜色?在我的后退按钮的情况下,默认颜色是白色 但是我的出来是黑色的,我想把它改成白色,我尝试了强调色,但它仍然没有改变我。 android 3 Answers Voted Best Answer x4mp73r 2020-03-29T14:33:19+08:002020-03-29T14:33:19+08:00 以编程方式进行: final Drawable upArrow = getResources().getDrawable(R.drawable.abc_ic_ab_back_mtrl_am_alpha); upArrow.setColorFilter(Color.parseColor("#FFFFFF"), PorterDuff.Mode.SRC_ATOP); getSupportActionBar().setHomeAsUpIndicator(upArrow); abc_ic_ab_back_mtrl_am_alpha从 API 23 开始,它从 abc_ic_ab_back_material Codelaby 2020-10-16T09:46:50+08:002020-10-16T09:46:50+08:00 通过以下功能,它可以应用于AppBar public static void tintMenuItemIcon(Context context, Menu menu, int idItem, int color) { Drawable drawable = menu.findItem(idItem).getIcon(); drawable = DrawableCompat.wrap(drawable); DrawableCompat.setTint(drawable,color ); menu.findItem(idItem).setIcon(drawable); } 它的用途: 建议更改 in 中菜单项的AppBar颜色onCreateOptionsMenu @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { inflater.inflate(R.menu.menu_routes, menu); GeneralUtils.tintMenuItemIcon(getActivity(), menu, R.id.action_sort, Color.WHITE); GeneralUtils.tintMenuItemIcon(getActivity(), menu, R.id.action_filter, Color.WHITE); super.onCreateOptionsMenu(menu, inflater); } Jhony Urbano 2020-07-25T17:52:59+08:002020-07-25T17:52:59+08:00 没有java代码的解决方案是修改stylo的xml。 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 如果你有 Light 后退按钮将其着色为黑色,但使用 DarkActionBar 将其着色为白色
以编程方式进行:
abc_ic_ab_back_mtrl_am_alpha
从 API 23 开始,它从abc_ic_ab_back_material
通过以下功能,它可以应用于
AppBar
它的用途:
建议更改 in 中菜单项的
AppBar
颜色onCreateOptionsMenu
没有java代码的解决方案是修改stylo的xml。
如果你有 Light 后退按钮将其着色为黑色,但使用 DarkActionBar 将其着色为白色