大家好,又见面了,我是全栈君。
近期开发中有须要Menu键,结果发现了一个非常尴尬的问题。我的測试机上有Menu键。可是測试平板上没有,队友的測试机上竟然也没有Menu键。这着实有些尴尬…
上网谷歌之后才发现问题所在:
仅仅有在android 4.0 之前的机器中,menu 键是才作为硬件存在的,之后的机器有的有。有的就没有了,比方三星的S3,Note2等等都是有这个按键的。可是很多其它的手机取消了这个按键。所以假设project中实用到这个按键,那就必须调低最低版本号, 比方android 2.2 的project,跑到了 4.0 的机器上面(4.0已经取消了 硬件menu)。那么就会造成menu 键的缺失,所以google 在对支持 android 4.0 曾经版本号的项目都会默认加上虚拟menu键。
所以最关键的点在 清单文件里的:<uses-sdk android:minSdkVersion=”14″ />,假设你支持 4.0 以
前的版本号,就会给你加上虚拟menu了。
此时在每一个activity 的最以下。多了一个虚拟的menu键,每次点击屏幕它都会优先的出现。 在systemUI中。它是第一个接
受到点击的事件。
假设你最低版本号就是支持 4.0 。那么google 会觉得,你已经知道了这样的硬件上的改变。所带来软件的
差异,你要在程序中自己处理这样的硬件menu取消的问题。他就不会强制性给你加上虚拟menu了。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/115787.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...