在Android中附加操作栏项

时间:2012-11-19 15:57:55

标签: android android-actionbar

我希望能够从我的片段中附加操作栏项目。

例如,在横向模式下,我有一个项目列表,如果单击,则会显示有关该项目的信息页面。

可以通过单击操作栏中的下拉列表来更改列表,以选择列表类别。

单击列表项后,将填充详细信息片段。然后,我希望将3个选项卡添加到操作栏中,以便用户可以选择为该项目显示哪个详细信息页面,即:“详细信息(默认)”;“地图”;和“特色”。

在我的片段中,我可以设置setHasOptionsMenu(true),然后使用onCreateOptionsMenu调用添加新选项卡。然而,这会删除我仍希望显示的下拉列表。

如何简单地附加ActionBar Items ..?

由于

1 个答案:

答案 0 :(得分:0)

我只是从我的活动onCreateOptionsMenu调用片段的onCreateOptionsMenu。您可以添加if语句来决定调用片段的版本,或者默认调用片段的onCreateOptionsMenu并将if语句放在那里以决定添加什么。然后,只要需要改变,只需拨打invalidateOptionsMenu

您可能需要删除setHasOptionsMenu来电。

的活动:

public boolean onCreateOptionsMenu(Menu m)
{
    // insert activity options
    if (needFragmentOptions) {
       fragment.onCreateOptionsMenu(m);
    }
    return true;
}

片段:

public boolean onCreateOptionsMenu(Menu m)
{
   // insert fragment options
   return true;
}