Android Framework

锁屏界面鼠标不能解锁屏幕

2017-04-10  本文已影响38人  helloKai

出现了锁屏界面上使用鼠标从底部滑动到最上方都不能解锁开屏幕的现象。

猜想了相关对于MotionEvent是否会有鼠标和手指的事件处理不一样所以导致的结果,当时从MotionEvent的api来看并没有不同,没有专门对于鼠标事件的处理,都是走的ACTION_DOWNACTION_MOVEACTION_UP

然后查看代码锁屏界面的的时间处理流程,NotificationPanelView是通知界面,它将在锁屏界面上的处理都是在PanelView来处理的,查看其onTouchEvent函数,发现里面有对mouse的事件判断

frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java

// On expanding, single mouse click expands the panel instead of dragging.
if (isFullyCollapsed() && event.isFromSource(InputDevice.SOURCE_MOUSE)) {
    if (event.getAction() == MotionEvent.ACTION_UP) {
        expand(true);
    }
    return true;
}

是由于在这里面会返回true而导致锁屏界面鼠标很难解锁的。取消此段代码让其可以继续走下面的流程即可。

上一篇下一篇

猜你喜欢

热点阅读