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

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

猜想了相关对于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而导致锁屏界面鼠标很难解锁的。取消此段代码让其可以继续走下面的流程即可。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,076评论 25 708
  • 一、 Android分发机制概述: Android如此受欢迎,就在于其优秀的交互性,这其中,Android优秀...
    IT枫阅读 2,490评论 2 9
  • 基于Android 7.1.1锁屏模块分析 1.代码基于Android7.1.1可以从 https://andro...
    helloKai阅读 3,994评论 0 5
  • 最近阅读了十点读书里的一篇文章,文章名叫通透的活。 文中借用了伊能静的成长经历。她在一场...
    姚瑾读书阅读 420评论 6 5
  • 翠翠的感情永远藏在心里,不为人知,其实她也不懂得究竟是什么,只是心里莫名其妙的想着一些事情。她从小在风日里长养着,...
    楠苜阅读 321评论 2 0