我试图在我的视图中的onTouchListener中进行简单的方向识别,但是event.getHistorySize()返回0,有时返回0,但很少返回1或2。通常来说,没有历史记录,所以我无法识别
ll3.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
if (arg1.getHistorySize() > 0) {
int prev = (int) arg1.getHistoricalY((arg1
.getHistorySize() - 1));
if (arg1.getY() > prev) {
有谁知道问题出在哪里吗?
最佳答案
除非您有充分的理由查看传感器输出的每个值,否则您可能会执行类似的操作。 (在两帧之间输出的值可能不太重要?)
ll3.setOnTouchListener(new OnTouchListener() {
@Override
int prevY=0;
public boolean onTouch(View arg0, MotionEvent arg1) {
if (arg1.getY() > prevY) {
// do stuff
}
prevY = arg1.getY();
关于android - OnTouch历史记录大小始终为0,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9862759/