android – 热敏触摸兼容性问题

在发布我的产品后,我开始抱怨某些手机的某个屏幕无效.经过大量研究和大量尝试解决这个问题,我发现受热量而不是压力控制的手机存在这个问题.不幸的是我只发现了问题.发生的事情是鼠标向上和鼠标移动运动事件似乎是相同的运动.以下是我的代码的工作原理:

if(event.getAction()==MotionEvent.ACTION_MOVE)
{
    lockdown=true;
}
else if(event.getAction()==MotionEvent.ACTION_UP && lockdown==false)
{
     ...
}
else if(event.getAction()==MotionEvent.ACTION_UP)
{
    ...
    lockdown=false;
}

这个代码适用于像我这样的压力触摸手机就好了.它被设计成在拖动触摸时某些东西不起作用.我真的可以使用一些有关如何解决此问题的见解.

最佳答案 经过一场与我的测试员来回走动的夜晚之后,这就是我想出来的

// somewhere in the prior code a pressure sample is needed
public float dwnPressure
if(event.getAction()==MotionEvent.ACTION_DOWN)
{
 dwnPressure=float(event.getPressure()*0.99)
}

回到我遇到问题的代码

if(event.getAction()==MotionEvent.ACTION_MOVE)
{
 if(event.getPressure>dwnPressure)
 {
  lockdown=true;
 }
}
else if(event.getAction()==MotionEvent.ACTION_UP && lockdown==false)
{
 ...
}
else if(event.getAction()==MotionEvent.ACTION_UP)
{
...
 lockdown=false;
}

这种变化在一些之前有问题的手机上运行得很好.有些手机有显着的性能提升,但有点挑剔.我认为id至少可以分享我的辛勤工作,即使它不是100%,因为这个问题没有像我以前在stackoverflow上那样快地回答

点赞