contextMenu继承自menu,于是具有menu的一些属性,比如它的add方法,add方法其中的几个参数要注意一些是什么意思:如下图:
第一个groupid顾名思义,组id,如果要把这些item分组的话可以定义这个ID,
第二个就重要了,itemid就是该项的ID,一般用于在点击时区分点到的是哪个,常用在oncontextitemselected.该方法虽然没有说是长按,其实就是长按的意思
第三个就是order顺序,最后一个是显示的名字,字符串
menu的调用好像现在用的少了吧,很多手机都没有了菜单按键,不过也得记得有这个东西,一般需要实现onOptionsItemSelected(MenuItem)
and onContextItemSelected(MenuItem)
.如下所示,菜单有三种,一个是刚提到的contextmenu,一个是optionmenu,还有子菜单,submenu.分别支持不同类型的menu.
注意下面这句话:为了展示上下文菜单的长按功能,需要调用registerforcontextmenu并且重写oncreatecontextmenu,而registerforcontextmenu这个函数有什么作用呢,下面就可以看到:
可以看到官方文档的介绍,这个方法将在该activity中的本view中设置oncreatecontextmenulistener.
当展示出上下文菜单的时候,oncreatecontextmenu这个方法将会调用