菜鸟对几个事件的疑问
初学者对几个事件的疑问
onMenuItemSelected与onOptionsItemSelected的区别,分别是在什么时候调用,我怎么发现我点击菜单时,两个方法都调用了,还有onMenuItemClick也调用了
为什么声明这么多功能同样的事件呢,估计我没理解它们真正的用处,故此一问
------解决方案--------------------
android的菜单有ContextMenu 和 OptionsMenu,一般情况下,前者是长按时弹出,后者是按手机硬件菜单弹出。两者并不冲突哈!
无论弹出Context menu还是Option menu,点击它们的某一菜单项,都会执行onMenuItemSelected。
而onOptionsItemSelected是响应Option menu的点击菜单项事件。
因此一个是对应两种菜单的响应事件(通用),另一个只针对Option 菜单的响应事件(定向)。
楼主可以选择性的使用,如果仅仅是需要点击菜单键(Option menu),那么只需要重写onOptionsItemSelected方法即可。
onMenuItemSelected与onOptionsItemSelected的区别,分别是在什么时候调用,我怎么发现我点击菜单时,两个方法都调用了,还有onMenuItemClick也调用了
为什么声明这么多功能同样的事件呢,估计我没理解它们真正的用处,故此一问
------解决方案--------------------
android的菜单有ContextMenu 和 OptionsMenu,一般情况下,前者是长按时弹出,后者是按手机硬件菜单弹出。两者并不冲突哈!
无论弹出Context menu还是Option menu,点击它们的某一菜单项,都会执行onMenuItemSelected。
而onOptionsItemSelected是响应Option menu的点击菜单项事件。
因此一个是对应两种菜单的响应事件(通用),另一个只针对Option 菜单的响应事件(定向)。
楼主可以选择性的使用,如果仅仅是需要点击菜单键(Option menu),那么只需要重写onOptionsItemSelected方法即可。