Options Menu的android3.0以上和以下版本显示刷新原理,刷新适配
一 显示区别:
2.3.x及以下版本,需要按菜单键显示菜单,当菜单打开时,第一个可见的部分是图标菜单,最多可容纳6个菜单项。如果你的菜单包括Android的地方超过6项,第六项,其余将被归到”More”菜单下;3.0以上版本,逐渐抛弃了2.3.x及以下版本这种menu这种风格,主推Action Bar,且当菜单打开时,会显示所有菜单项。
二Menu创建、运行方面的区别
1> 在2.3.x及以下版本,当菜单打开时,系统调用:onCreateOptionMenu()方法创建menu实例。3.0以上的版本,应用启动时调用:onCreateOptionMenu()方法来创建menu实例。
2> 在2.3.x及以下版本中,当menu实例创建后,每次按菜单键,都会调用:onPrepareOptionsMenu()方法。3.0及以上版本,并不是每次按菜单键onPrepareOptionsMenu()方法都会调用;另外3.0及以上版本,新增了:invalidateOptionsMenu()方法,需要手动调用:invalidateOptionsMenu()方法,这时系统会去依次调用:onCreateOPtionMenu,onPrepareOptionMenu()方法,且此时再去按菜单键,onPrepareOptionMenu()方法就不再被调用了。
如果使用了V7support包要在低版本和高版本同时刷新menu
supportInvalidateOptionsMenu();
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。