当searchview展开时,操作栏后退按钮会发生变化

时间:2015-12-04 11:12:29

标签: android android-actionbar searchview

我正在使用AppCompat活动,并且我已将后退按钮的颜色更改为白色normal searchView。我的ActionBar有一个搜索视图,在展开时,会将后退按钮的颜色从白色更改为黑色。 expanded searchView

我需要将ActionBar的后退按钮的颜色保持为白色。 我试过了addOnLayoutChangeListener,但它没有帮助我。请提出解决方案。

我认为,应该有一种方法在主题本身中实现actionBar后退按钮的颜色。

编辑:

为actionBar后退按钮设置白色:

getSupportActionBar().setHomeAsUpIndicator(getColoredArrow(context));

    public static Drawable getColoredArrow(Context context) {
        Drawable arrowDrawable = context.getResources().getDrawable(
                R.drawable.abc_ic_ab_back_mtrl_am_alpha);
        Drawable wrapped = DrawableCompat.wrap(arrowDrawable);

        if (arrowDrawable != null && wrapped != null) {
            // This should avoid tinting all the arrows
            arrowDrawable.mutate();
            DrawableCompat.setTint(wrapped, Color.WHITE);
        }

        return wrapped;
    }

搜索视图菜单:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item android:id="@+id/action_search"
          android:title="Search"
          android:icon="@drawable/menu_search"
          android:showAsAction="ifRoom|collapseActionView"
          app:actionViewClass="android.widget.SearchView" />
</menu>

1 个答案:

答案 0 :(得分:0)

无论何时按下搜索按钮,只需将后退按钮图像资源设置为黑色图像,只要隐藏搜索栏,就将其设置为白色