转自:http://blog.sina.com.cn/s/blog_6e15a6010100mafz.html

Android默认是没有鼠标支持的,但在Android系统会应用到许多其他的地方,如平板电脑、电视中,许多时候就需要鼠标的支持。

支持原理:Android中有原生的Touch事件,鼠标的各种事件都可以转换为各种Touch事件,将鼠标事件走与Touch事件相关的路径就可以实现。需要注意的是,在屏幕旋转后,鼠标的坐标等信息需要程序处理才能正确。

修改文件概览:

C++文件:

frameworks/base/include/ui/EventHub.h                frameworks/base/libs/ui/EventHub.cpp java文件:                 frameworks/base/core/java/android/view/RawInputEvent.java                 frameworks/base/services/java/com/android/server/InputDevice.java                 frameworks/base/services/java/com/android/server/KeyInputQueue.java                 frameworks/base/services/java/com/android/server/WindowManagerService.java 文件功能描述            EventHub.h                           增加鼠标设备的定义            EventHub.cpp                       函数open_device(const char *deviceName)中增加鼠标类型            RawInputEvent.java              增加鼠标设备            InputDevice.java                   增加鼠标连接状态标志                                                  MotionState中增加方法 generateMouseMotion()将原始鼠标时间转化为                                                               MotionEvent事件           KeyInputQueue.java      在事件RawInputEvent.EV_DEVICE_ADDED中判断鼠标设备,动态增加                                                  在事件RawInputEvent.EV_DEVICE_REMOVED中,动态判断鼠标删除                                                  在ev.type == RawInputEvent.EV_KEY中增加鼠标左中右键处理                                                  在ev.type == RawInputEvent.EV_REL中增加鼠标坐标变动和滚轮的处理                                                    recycleEvent()中增加鼠标相关的清理工作           WindowManagerService.java     实现在界面上的画鼠标及移动鼠标的工作。

android 鼠标配置,Android 增加鼠标支持相关推荐

  1. android xml配置,Android XML设置z-Index

    基本上我有2个线性布局.用户单击按钮时,一个线性布局将展开或折叠.另一个将始终显示在顶部.这里是我的xml:Android XML设置z-Index android:layout_width=&quo ...

  2. Android Studio 配置Android Annotation

    主要配置project下的build.gradle 新版的Android Studio 不像Eclipse, 它没有Annotation Processing. apply plugin: 'com. ...

  3. android studio 配置+安装

    前言 这个教程你将学会如何使用Android Studio2.0开发Android应用,从安装到开发Hello World都是采用图文并茂的方式讲解的,希望对你学习Android Studio开发有所 ...

  4. uni-app Android证书配置

    uni-app Android证书配置 uni-app Android证书配置 Android证书创建具体步骤 证书相关资料填写信息参考 uni-app Android证书配置 Android证书创建 ...

  5. android studio viewo,android studio 3.6.0 绑定视图新特性的方法

    Android studio 3.6.0 绑定视图使用方法 1.确保你的 build gradle 最低为3.6.0 dependencies { classpath 'com.android.too ...

  6. android 键盘使用教程,用鼠标键盘控制你的Android手机完整图文教程

    网上大都是91助手for android来连接手机和电脑,我自己比较偏向于豌豆荚,都可以的,下面给出我的步骤及过程中遇到的几个小问题,供大家参考! 一.鼠标键盘控制手机教程 1.在PC上,安装豌豆荚, ...

  7. 关于Android studio在运行时鼠标光标突然失效的解决办法

    这几天用公司的电脑开发Android app的时候,发现突然间鼠标在Android studio上失去光标,鼠标正常没有坏,就是没办法在编辑区选中,甚至我点击了左边项目栏中的java文件,在代码编辑区 ...

  8. android 方向键控制,如何用鼠标键盘控制你的Android手机

    如何用鼠标键盘控制你的Android手机 网上大都是91助手for android来连接手机和电脑,我自己比较偏向于豌豆荚,都可以的,下面给出我的步骤及过程中遇到的`几个小问题,供大家参考! 一.鼠标 ...

  9. android input鼠标坐标,android - 如何在EditText中设置光标位置?

    android - 如何在EditText中设置光标位置? 有两个EditText,在加载页面时,第一个EditText中设置了一个文本,所以现在光标将在EditText的起始位置,我想在第二个Edi ...

最新文章

  1. 修改PHP上传文件大小限制的方法
  2. php中命名空间重要吗,关于php:PHP中命名空间是怎样的存在一
  3. 漏洞发布平台-安百科技
  4. linux 串口最高速率,Uart 16c950 linux速度高于B4000000(4Mbps)
  5. retinanet 部署_再谈RetinaNet
  6. 存PHP,数据存储 · PHP – Bmob后端云
  7. 洪水填充算法_区域填充算法和多边形填充的扫描线算法
  8. HCIE-RS面试---STP拓扑变化过程
  9. 一个ABC眼中的中国的创业环境(一)
  10. android module驱动编程及通信
  11. 测试工程师必备技能之缺陷分析
  12. 《商业的本质》读书笔记
  13. XJOI 3709 测测你的RP
  14. matlab读取nc\hdf\grd等气象文件 自用
  15. 固态硬盘是什么接口_SATA M.2 PCIe?一分钟教你认识固态硬盘接口
  16. 010editor pyc template
  17. Python爬虫之Scrapy框架系列(12)——实战ZH小说的爬取来深入学习CrawlSpider
  18. 手把手教萌新2:认识python交互式窗口
  19. GameObject.Find()能否查找隐藏属性的游戏对象?
  20. 修改chrome滚动条的样式

热门文章

  1. 基于QT的截图工具教程
  2. Antlr之父--- Professor Terence Parr (中文原文摘自XX杂志)
  3. python中字典元素以键信息为索引访问_Python 字典操作
  4. Windows 10 Enterprise 2015 LTSB 2019_Windows超级牛皮软件卸载工具
  5. 共探企业数智化升级新方向——BI、中台和数据智能分析平台
  6. 复盘银行的区块链实践:从分布式账本,到产业数字化
  7. 中国企业500强名单
  8. Ubuntu下包管理
  9. DOTween的基本使用方法
  10. C++项目 旱冰场造价