如何根据标签布局隐藏操作栏菜单项?

时间:2015-09-16 12:48:32

标签: android tabs

我的android应用程序中有一个actionbar_layout和三个选项卡.actionbar_layout对于所有三个选项卡都是通用的(“事件”选项卡,“邀请”选项卡,“群聊”选项卡)。动作栏_布局有3个图标(下拉列表,事件图标和设置图标) 。我需要根据标签点击显示图标,例如当ontap邀请标签"设置图标"仅在操作栏布局中可见,如果仅单击事件选项卡"事件图标"需要显示。同样,当点击群聊时,我需要显示"下拉图标"。

如何实现这一点请帮助我

我的menu_user_dashboard.xml代码位于

之下
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:appmunu="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context="ringee.app.com.ringeeapp.UserDashBoard">

    <item
        android:id="@+id/dropdown"
        android:icon="@drawable/dropdown_icon"
        android:title="Dropdown"
        appmunu:showAsAction="always">
        <menu>
            <item
                android:id="@+id/all"
                android:title="All" />
            <item
                android:id="@+id/event"
                android:title="Event" />
            <item
                android:id="@+id/invitation"
                android:title="Invitation" />
        </menu>
    </item>

    <item
        android:id="@+id/create_occasion"
        android:icon="@drawable/ic_action_event"
        android:title="Create Occasion"
        appmunu:showAsAction="always" />

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

    <item
        android:id="@+id/profile"
        android:orderInCategory="100"
        android:title="@string/profile_image" />

</menu>

1 个答案:

答案 0 :(得分:1)

您可以代表某些标志隐藏或显示OnCreateOptionsMenu中的菜单项

当用户选择任何项目时,然后为该项目设置标志为true并调用

invalidateOptionsMenu()

之后你可以改变可见性

 MenuItem item = menu.findItem(R.id.menu_Done);

if (flag/condition)) {
  item.setVisible(false); 
} else { }