简单描述下,目前制作一个软件,界面上模拟一个浮动鼠标,鼠标移动到哪,按下确定就点击哪;
实现思路是adb shell input命令;
整体思路没什么问题,adb shell 执行是正确的,问题在于:点击时灵时不灵;
表现为:点击后,必须马上移动一下屏幕上的鼠标,点击才会生效。如果不移动鼠标,就不会生效。
百思不得其解,就只能在点击后,通过代码手动移动一下位置,勉强解决这个问题。
但是今天优化代码的时候发现,不好使了。
开始琢磨,突然灵光一闪,我这个点击是直接根据坐标点击,而点击位置恰好是鼠标的中心
鼠标又是一个view,是不是鼠标挡住我的点击呢?
这么一想,还真有可能,尝试让点击坐标偏移出鼠标范围,发现真的好使了。。。
于是通过让view不可点击,解决了这个问题。
回头一看,很明显的问题,为什么一开始没有发现呢?一直想着是不是点击时长不够,点击范围太小,点击权限不够,从来没想着是被挡住了。
这不是很像“一叶障目,不识泰山”。(鼠标只有10*10像素大小),举一反三,日常生活中是不是也有很多,其实问题并不严重,但是却被一点点眼前的小障碍挡住的情况呢?























