Android:将菜单中的操作添加到自己的标题栏RelativeLayout

时间:2015-03-02 03:51:59

标签: android layout menu android-relativelayout

在Android项目中,大多数活动都禁用ActionBar,风格为

<style name="AppTheme" parent="AppBaseTheme">
    <item name="android:windowActionBar">false</item>
    <item name="android:windowNoTitle">true</item>
</style>

并通过include

使用基于RelativeLayout的自有标题栏
<include
    android:id="@+id/activity_title_bar"
    layout="@layout/view_title_bar" />

没有使用ActionBar的意图,但我想找到如何在ActionBar上添加标题栏上的菜单项。

目前,这些操作在res / menun / common_actions.xml中定义 并通过选项菜单可见。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.common_actions, menu);
    return super.onCreateOptionsMenu(menu);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle presses on the action bar items
    switch (item.getItemId()) {
        case R.id.action_home:
            MainActivity.start(this);
            return true;
        case R.id.action_search:
            SearchActivity.start(this);
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}   

但是新设备上没有选项菜单按钮。

如何实施向标题栏RelativeLayout添加操作? 不需要所有Actionbar逻辑,只需对定义菜单中的图标执行2个操作,并将它们放在标题栏上。

相关文档:

1 个答案:

答案 0 :(得分:1)

你应该真的只使用Toolbar。它相当简单,你可以完全达到你想要的效果......

..但要实现您想要的效果,您可以使用PopupMenu并将其锚定到看起来像溢出菜单的ImageViewImageButton