onPrepareOptionsMenu 和onCreateOptionsMenu 的区别
16lz
2021-01-26
在android中创建菜单menu时需要重写Activity的onCreateOptionsMenu(Menumenu)方法,这个方法只在第一次创建的时候调用一次,所以如果之后想对menu进行动态的修改,那么就不能再对onCreateOptionsMenu做什么手脚,就要用到onPrepareOptionsMenu(Menumenu)方法了。
onPrepareOptionsMenu与onCreateOptionsMenu不同的是,他在每次按下menu硬键之前会被调用,所以可以在这里动态的改变menu。
注意:在onPrepareOptionsMenu(Menumenu)函数中,首先需要调用:
super.onPrepareOptionsMenu(menu);
menu.clear();
如果没有clear而直接add的话,那么菜单中菜单项是会“追加”的,这样随着你不停的点menu键,菜单项就不停的增加。
另外,android系统默认的菜单样式是支持最多3个一行,如果有4项就每行2个有2行...如果想自定义样式,可以使用xml文件定义样式。
onPrepareOptionsMenu与onCreateOptionsMenu不同的是,他在每次按下menu硬键之前会被调用,所以可以在这里动态的改变menu。
注意:在onPrepareOptionsMenu(Menumenu)函数中,首先需要调用:
super.onPrepareOptionsMenu(menu);
menu.clear();
如果没有clear而直接add的话,那么菜单中菜单项是会“追加”的,这样随着你不停的点menu键,菜单项就不停的增加。
另外,android系统默认的菜单样式是支持最多3个一行,如果有4项就每行2个有2行...如果想自定义样式,可以使用xml文件定义样式。
更多相关文章
- Android(安卓)HDecoration项目so库导出和调用
- Android(安卓)属性动画 详解
- [Android]使用AdapterTypeRender对不同类型的item数据到UI的渲染
- android获取监听SD Card状态的方法
- android rgb颜色设置方法及常用颜色的RGB值
- Android(安卓)Activity之Window的创建过程
- Android(安卓)7.1 WebView 实现方式选择
- android Retrofit+OKhttp实现接口调用
- 成佩涛编程之路——android之jquery使用(二)