以前一般都是在Activity中添加menu菜单,一般是重写onCreateOptionsMenu和onOptionsItemSelected方法。
现在Fragment用的多了,就在Fragment里面添加menu菜单,也是重写了onCreateOptionsMenu和onOptionsItemSelected方法,但是发现没有效果。在源代码中可以发现,这跟一个叫mHasMenu的boolean变量有关系。这个变量控制Fragment的menu菜单的添加。如果mHasMenu为false,那么是不会执行onCreateOptionsMenu方法的,也就是不会添加Fragment的menu菜单。
setHasOptionsMenu(true);
哎 到这一步 发现还没解决问题 看看有木有activity中的
onOptionsItemSelected 方法
返回为false 不拦截 就可以了