Android多点触摸的实现——1.6patch 一

Android多点触摸的实现——1.6patch 一

ID:39464567

大小:20.11 KB

页数:10页

时间:2019-07-03

Android多点触摸的实现——1.6patch 一 _第1页
Android多点触摸的实现——1.6patch 一 _第2页
Android多点触摸的实现——1.6patch 一 _第3页
Android多点触摸的实现——1.6patch 一 _第4页
Android多点触摸的实现——1.6patch 一 _第5页
资源描述:

《Android多点触摸的实现——1.6patch 一 》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Android多点触摸的实现——1.6patch(一)第一章摘要在Linux内核支持的基础上,Android在其2.0源码中加入多点触摸功能。由此触摸屏在Android的frameworks被完全分为2种实现途径:单点触摸屏的单点方式,多点触摸屏的单点和多点方式。第二章软件位在Linux的input.h中,多点触摸功能依赖于以下几个主要的软件位:………………………..#defineSYN_REPORT0#defineSYN_CONFIG1#defineSYN_MT_REPORT2……………………….

2、..#defineABS_MT_TOUCH_MAJOR0x30/*Majoraxisoftouchingellipse*/#defineABS_MT_TOUCH_MINOR0x31/*Minoraxis(omitifcircular)*/#defineABS_MT_WIDTH_MAJOR0x32/*Majoraxisofapproachingellipse*/#defineABS_MT_WIDTH_MINOR0x33/*Minoraxis(omitifcircular)*/#defineABS_MT

3、_ORIENTATION0x34/*Ellipseorientation*/#defineABS_MT_POSITION_X0x35/*CenterXellipseposition*/#defineABS_MT_POSITION_Y0x36/*CenterYellipseposition*/#defineABS_MT_TOOL_TYPE0x37/*Typeoftouchingdevice*/#defineABS_MT_BLOB_ID0x38/*Groupasetofpacketsasablob*/…

4、………………………在Android中对应的软件位定义在RawInputEvent.java中:…………………..publicclassRawInputEvent{……………….publicstaticfinalintCLASS_TOUCHSCREEN_MT=0x00000010;………………..publicstaticfinalintABS_MT_TOUCH_MAJOR=0x30;publicstaticfinalintABS_MT_TOUCH_MINOR=0x31;publicstaticfina

5、lintABS_MT_WIDTH_MAJOR=0x32;publicstaticfinalintABS_MT_WIDTH_MINOR=0x33;publicstaticfinalintABS_MT_ORIENTATION=0x34;publicstaticfinalintABS_MT_POSITION_X=0x35;publicstaticfinalintABS_MT_POSITION_Y=0x36;publicstaticfinalintABS_MT_TOOL_TYPE=0x37;publicst

6、aticfinalintABS_MT_BLOB_ID=0x38;………………….publicstaticfinalintSYN_REPORT=0;publicstaticfinalintSYN_CONFIG=1;publicstaticfinalintSYN_MT_REPORT=2;………………..在Android中,多点触摸的实现方法在具体的代码实现中和单点是完全区分开的。在Android代码的EventHub.cpp中,单点屏和多点屏由如下代码段来判定:intEventHub::open_dev

7、ice(constchar*deviceName){………………………if(test_bit(ABS_MT_TOUCH_MAJOR,abs_bitmask)&&test_bit(ABS_MT_POSITION_X,abs_bitmask)&&test_bit(ABS_MT_POSITION_Y,abs_bitmask)){device->classes

8、=CLASS_TOUCHSCREEN

9、CLASS_TOUCHSCREEN_MT;//LOGI("Itisamulti-touchscreen!");

10、}//single-touch?elseif(test_bit(BTN_TOUCH,key_bitmask)&&test_bit(ABS_X,abs_bitmask)&&test_bit(ABS_Y,abs_bitmask)){device->classes

11、=CLASS_TOUCHSCREEN;//LOGI("Itisasingle-touchscreen!");}………………..}我们知道,在触摸屏驱动中,通常在probe函数中会调用input_set_abs_p

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。