Android触摸屏驱动屏幕翻转
项目中移植了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) {
……
更多相关文章
- android 百度地图获取左上角和右下角的坐标
- Android获取屏幕大小 .
- android 模拟器键盘控制键不能用 以及 设置模拟器屏幕大小
- Android屏幕适配大法
- Android(安卓)TTS 实战五:摇一摇输入
- android 之View 一
- ScrollBy & ScrollTo
- day1 android开发环境安装
- 【转】Android的计量单位px,in,mm,pt,dp,dip,sp