项目中移植了Android触摸屏驱动,后来需要把屏幕翻转180度,此时触摸的坐标是没有适配的,修改以下代码即可:

frameworks/native/services/inputflinger/InputReader.cpp

void TouchInputMapper::configureSurface(nsecs_t when, bool* outResetNeeded) {

    int32_t oldDeviceMode = mDeviceMode;

    ……

    if (viewportChanged) {
        mViewport = newViewport;

char buffer_orientation[PROP_VALUE_MAX];   
memset(buffer_orientation, 0, sizeof(buffer_orientation));
property_get("persist.sys.panel.flip", buffer_orientation, "0");    
int cmpRet = atoi(buffer_orientation);        
ALOGI("persist.sys.hwrotation~~~~~~~~~~~~~~~~~~~~~~~~~ = %d",cmpRet);    
if (cmpRet == 0)    
{        
mViewport.orientation = DISPLAY_ORIENTATION_0;
}  
else if(cmpRet == 90)    
{
mViewport.orientation = DISPLAY_ORIENTATION_90;  
}
else if(cmpRet == 180)
{
mViewport.orientation = DISPLAY_ORIENTATION_180;  
}
else if(cmpRet == 270)
{
mViewport.orientation = DISPLAY_ORIENTATION_270;  
}

        if (mDeviceMode == DEVICE_MODE_DIRECT || mDeviceMode == DEVICE_MODE_POINTER) {

……

更多相关文章

  1. android 百度地图获取左上角和右下角的坐标
  2. Android获取屏幕大小 .
  3. android 模拟器键盘控制键不能用 以及 设置模拟器屏幕大小
  4. Android屏幕适配大法
  5. Android(安卓)TTS 实战五:摇一摇输入
  6. android 之View 一
  7. ScrollBy & ScrollTo
  8. day1 android开发环境安装
  9. 【转】Android的计量单位px,in,mm,pt,dp,dip,sp

随机推荐

  1. 处理固定宽度下的长字符串绘制(Android)
  2. Android(安卓)WheelMenu圆形菜单,巧妙实
  3. Android 流媒体系列(一)
  4. android 手机开发( 什么是intent)
  5. Android ActivitiyThread的建立
  6. Android如何使用so文件和Android studio
  7. Android系统编译
  8. android 自带gps定位Location相关知识
  9. android studio开发安卓应用设置版本号
  10. Android HTTP 实现与服务器通信