使用工具栏将颜色作为背景的项目菜单

时间:2015-01-17 20:32:15

标签: android menu toolbar menuitem

我正在使用支持AppCompat v21库的工具栏,我想在项目中添加颜色作为背景。

I want something like this (Image link)

我无法将背景设置为工具栏的全高

I am getting this (Image link)

我的代码: menu.xml文件

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xxxx="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/action_search"
        android:icon="@drawable/new_action_search"
        android:title="@string/buscador_hint_busqueda"
        xxxx:actionViewClass="android.support.v7.widget.SearchView"
        xxxx:showAsAction="collapseActionView|ifRoom"
        />
    <item
        android:id="@+id/action_search_filter"
        android:title="@string/buscador_filtrar"
        android:icon="@drawable/ic_filter"
        xxxx:showAsAction="ifRoom|withText" />
    <item
        android:id="@+id/action_save"
        android:title="@string/buscador_save"
        android:icon="@drawable/action_item_save_icon"
        xxxx:showAsAction="ifRoom"/>
</menu>

action_item_save_icon.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape>
            <solid android:color="@color/green_bumeran_material"></solid>
            <size
                android:height="?attr/actionBarSize"
                android:width="?attr/actionBarSize" />
        </shape>
    </item>
    <item>
        <bitmap android:src="@drawable/ic_pin_save" />
    </item>
</layer-list>

2 个答案:

答案 0 :(得分:0)

您可以将视图用于工具栏而不是菜单,制作自己的布局

look to this question, he use layout instead of menus

答案 1 :(得分:0)

创建具有所需外观的xml布局。确保height =“match_parent”。抓住您的菜单,然后使用menu.getItem(int)获取相应的项目。然后在MenuItem执行menuItem.setActionView()上,使用夸大的布局或该布局的资源ID。