首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

显示不带call setSupportActionBar的菜单

在Android开发中,使用setSupportActionBar()方法可以将一个Toolbar实例设置为Activity的操作栏。通过调用setSupportActionBar()方法,我们可以在Toolbar中显示菜单项,并处理菜单项的点击事件。

然而,如果我们不使用setSupportActionBar()方法,而是想要在Toolbar中显示菜单项,可以通过以下步骤实现:

  1. 首先,在布局文件中定义一个Toolbar控件,例如:
代码语言:txt
复制
<androidx.appcompat.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    android:elevation="4dp"
    android:theme="@style/ThemeOverlay.AppCompat.ActionBar" />
  1. 在Activity的onCreate()方法中,找到Toolbar控件的引用,并设置它作为Activity的ActionBar,代码如下:
代码语言:txt
复制
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
  1. 接下来,我们需要创建一个菜单资源文件,例如menu_main.xml,并在其中定义菜单项,例如:
代码语言:txt
复制
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/menu_item1"
        android:title="菜单项1"
        android:icon="@drawable/ic_menu_item1"
        android:showAsAction="always" />
    <item
        android:id="@+id/menu_item2"
        android:title="菜单项2"
        android:icon="@drawable/ic_menu_item2"
        android:showAsAction="always" />
</menu>
  1. 最后,在Activity中重写onCreateOptionsMenu()方法和onOptionsItemSelected()方法,以处理菜单项的点击事件,代码如下:
代码语言:txt
复制
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();

    if (id == R.id.menu_item1) {
        // 处理菜单项1的点击事件
        return true;
    } else if (id == R.id.menu_item2) {
        // 处理菜单项2的点击事件
        return true;
    }

    return super.onOptionsItemSelected(item);
}

这样,我们就可以在Toolbar中显示菜单项,并处理菜单项的点击事件,而不使用setSupportActionBar()方法。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券