自定义列在操作栏菜单项 [英] Custom rows for menu items in action bar

查看:135
本文介绍了自定义列在操作栏菜单项的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想创建一种与在操作栏菜单的自定义行列表视图。是这样的:

我已经搜索网络上很多,但找不到任何有用的东西。我怎样才能做到这一点的事情?我知道你可以绑定自定义视图与菜单,但怎么项目?
我要绑定与该条目列表视图:

 <项目
        机器人:ID =@ + ID / action_settings
        机器人:orderInCategory =100
        机器人:showAsAction =从不
        机器人:标题=@字符串/ action_settings/>


解决方案

我已经过了一段时间想通了。如果要列出超过流量菜单只有图标和标题的项目,你需要的物品或利用他们组内做项目的嵌套菜单标记。

 <菜单的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android>
    <项目
        机器人:ID =@ + ID / action_settings
        机器人:图标=@绘制/ ic_action_overflow
        机器人:orderInCategory =100
        机器人:showAsAction =总是>
        <菜单>
            <项目
                机器人:ID =@ + ID / add_source
                机器人:图标=@绘制/ ADD_ON
                机器人:orderInCategory =100
                机器人:showAsAction =从不
                机器人:标题=@字符串/ add_source/>
            <项目
                机器人:ID =@ + ID / channel_setup
                机器人:图标=@绘制/ channelsetup_on
                机器人:orderInCategory =100
                机器人:showAsAction =从不
                机器人:标题=@字符串/ channel_setup/>
        &所述; /菜单>
    < /项目>    <项目
        机器人:ID =@ + ID /时间
        机器人:orderInCategory =99
        机器人:showAsAction =总是
        机器人:标题=@字符串/ time_title/>
    <项目
        机器人:ID =@ + ID /全天候
        机器人:图标=@绘制/ ic_action_cloud
        机器人:orderInCategory =98
        机器人:showAsAction =总是
        机器人:标题=@字符串/ weather_title/>
    <项目
        机器人:ID =@ + ID /搜索
        机器人:actionViewClass =android.widget.SearchView
        机器人:图标=@绘制/ ic_action_search
        机器人:orderInCategory =97
        机器人:showAsAction =collapseActionView |总是
        机器人:标题=@字符串/ search_title/>
&所述; /菜单>

I am trying to create kind of list view with custom rows in menu in action bar. something like this:

I have searched a lot on web but could not find anything useful. How can I achieve this thing? I know you can bind custom views with items in menu but how? I want to bind list view with this item:

<item
        android:id="@+id/action_settings"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="@string/action_settings"/>

解决方案

I had figured out after a while. If you want to list items with just icon and title in over flow menu, you need to do nesting of items within items or group them using menu tag.

<menu xmlns:android="http://schemas.android.com/apk/res/android" >    
    <item
        android:id="@+id/action_settings"
        android:icon="@drawable/ic_action_overflow"
        android:orderInCategory="100"
        android:showAsAction="always">
        <menu>
            <item
                android:id="@+id/add_source"
                android:icon="@drawable/add_on"
                android:orderInCategory="100"
                android:showAsAction="never"
                android:title="@string/add_source"/>
            <item
                android:id="@+id/channel_setup"
                android:icon="@drawable/channelsetup_on"
                android:orderInCategory="100"
                android:showAsAction="never"
                android:title="@string/channel_setup"/>
        </menu>
    </item>

    <item
        android:id="@+id/time"
        android:orderInCategory="99"
        android:showAsAction="always"
        android:title="@string/time_title"/>
    <item
        android:id="@+id/weather"
        android:icon="@drawable/ic_action_cloud"
        android:orderInCategory="98"
        android:showAsAction="always"
        android:title="@string/weather_title"/>
    <item
        android:id="@+id/search"
        android:actionViewClass="android.widget.SearchView"
        android:icon="@drawable/ic_action_search"
        android:orderInCategory="97"
        android:showAsAction="collapseActionView|always"
        android:title="@string/search_title"/>    
</menu>

这篇关于自定义列在操作栏菜单项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆