大家都知道,Android 4.0之后虚拟导航键正在成为主流,部分厂商的定制ROM中还提供了显示/隐藏虚拟导航条的功能。小弟在开发过程中遇到了一个问题,那就是虚拟导航在显示/隐藏两种状态下,画面会随着导航条的位置而上下偏移, 而且如果设置了相应触摸事件,触摸点的判断还是在原来的位置,但是画面却已经变了。 一开始我以为是自己的项目中分辨率设置的代码没写好,但是发现未经修改过的项目也会出现这种现象。以HelloWorld为例:
ROM为华为P6自带,可显示/隐藏虚拟导航。
注意两张图片中 "HelloWorld" 与屏幕上方的距离随着虚拟导航的状态而上下移动。
这个问题很是让人困扰,小弟尝试了各种解决方法,例如动态改变DesignedResolution, 配合各种适配方案, 但始终无法解决这个问题,google也找不到解决方法。特来求教各位大神。希望大家帮帮忙,不吝赐教,小弟先行谢过了!
PS: 横屏貌似不会出现这样的问题,竖屏才会