Toolbar菜单

本文介绍如何在Android应用中使用Toolbar及覆写onCreateOptionsMenu方法来添加菜单项,包括使用XML定义菜单项并设置显示条件,以及如何为这些菜单项添加监听器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ToolBar菜单,不论是原来的actionbar菜单还是自定义的Toolbar菜单,都可以通过覆写onCreateOptionMenu()这个方法来添加菜单项,示例如下:

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

方法创建一个MenuInflater,并用inflate方法添加菜单的xml到menu中,menu可以是文字可以是图片,菜单xml如下:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/persion_menu"
        android:title="个人"
        >
    </item>
    <item android:id="@+id/start_menu"
        android:title="start"
        android:icon="@android:drawable/btn_star_big_on"
        app:showAsAction="ifRoom">
    </item>
</menu>

app:showAsAction=“ifRoom”表示显示在Toolbar或这Actionbar上ifRoom表示如果有控件这个前提条件,如果没有这个属性,则菜单会隐藏在Toolbart或者Actionbar右侧的三个点中,点击三个点就可以看到 “个人” 菜单,菜单的监听可以通过setOnItemClickListener方法来实现监听:

        toolbar_main.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                switch (item.getItemId()){
                    case R.id.persion_menu:
                        break;
                    case R.id.start_menu:
                        break;
                }
                return false;
            }
        });
通过switch来选择item的id从而实现各个item的功能。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值