首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

安卓Menu的问题

近期开发中有须要Menu,结果发现了一个非常尴尬的问题。我的測试机上有Menu。可是測试平板上没有,队友的測试机上竟然也没有Menu。...这着实有些尴尬… 上网谷歌之后才发现问题所在: 仅仅有在android 4.0 之前的机器中,menu 是才作为硬件存在的,之后的机器有的有。...那么就会造成menu 的缺失,所以google 在对支持 android 4.0 曾经版本号的项目都会默认加上虚拟menu。...多了一个虚拟的menu,每次点击屏幕它都会优先的出现。 在systemUI中。它是第一个接 受到点击的事件。 假设你最低版本号就是支持 4.0 。...所带来软件的 差异,你要在程序中自己处理这样的硬件menu取消的问题。他就不会强制性给你加上虚拟menu了。

75110
您找到你想要的搜索结果了吗?
是的
没有找到

Android6.0源码分析之menu弹出popupwindow菜单流程分析

理论上是底层监测menu按键键值,通知framework层,framework经过一系列的处理后分发给上层,或者拦截掉 现在是假设framework层已经把menu按键分发给了用户,那么接下里就是activity...通过以上方法的分析可以总结出,一个menu事件在传递给activity后,如果不是menu事件就会直接交给window会向下传递,有三方可能进行处理 actionbar window view...这三个优先级由高到低,也就是说,menu事件会首先传递给actionbar,如果actionbar进行了处理并且将事件拦截下来不派发给窗口,那么menu事件到actionbar处理之后就结束了。...是否存在,menu菜单选项是否为空,menu的popup是否已经弹出,或者正在弹出,然后在进行popup对象的实例化,并开启加载popup的线程。...的状态模式,并且试着去弹出popup,mPopup.tryShow(); 到这里menu按下从activity分发到popup的弹起就分析完了

1.6K60
领券