添加上下文菜单内容menu-add方法参数意义

重写onCreateContextMenu():方法

—可以通过代码动态添加;

public void onCreateContextMenu(ContextMenu menu,View v,ContextMenuInfo menuInfo){
        super.onCreateContextMenu(menu,v,menuInfo);
        //设置Menu显示内容
        menu.setHeaderTitle("文件操作");
        menu.setHeaderIcon(R.drawable.ic_launcher);
        menu.add(1,1,1,"复制");
        menu.add(1,2,1,"粘贴");
        menu.add(1,3,1,"剪切");
        menu.add(1,4,1,"重命名");
    }

menu动态添加一个item方法

@Override
    public boolean onCreateOptionsMenu(Menu menu) {

        menu.add(Menu.NONE, MENU_REVET, 0, R.string.revert)
                .setEnabled(true)
                .setIcon(R.drawable.ic_settings_schpwroff)
                .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
        menu.add(Menu.NONE, MENU_SAVE, 0, R.string.done)
                .setEnabled(true)
                .setIcon(R.drawable.ic_settings_schpwroff)
                .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
        return super.onCreateOptionsMenu(menu);
    }

参数解读:

setEnable:这个是设置menuItem可点击状态,设置为false,会显示灰色

setIcon:设置图标

setShowAsAction:设置menu显示位置

最后一个方法-add

这个方法里面有四个参数,它们的意义分别为

​ 第一个int类型的group ID参数,代表的是组概念,你可以将几个菜单项归为一组,以便更好的以组的方式管理你的菜单按钮。它对应方法

int i = item.getGroupId();

​ 第二个int类型的item ID参数,代表的是项目编号。这个参数非常重要,一个item ID对应一个menu中的选项。在后面使用菜单的时候,就靠这个item ID来判断你使用的是哪个选项。它对应

int id = item.getItemId();

​ 第三个int类型的order ID参数,代表的是菜单项的显示顺序。默认是0,表示菜单的显示顺序就是按照add的显示顺序来显示。如果两个位置数值一样,那么先定义的拍前面。而且,groupid并不影响排列顺序。
​ 第四个String类型的title参数,表示选项中显示的文字。

发布了83 篇原创文章 · 获赞 37 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/xbean1028/article/details/104799163
今日推荐