【发布时间】:2012-03-25 18:22:33
【问题描述】:
在我看来,我正在尝试在 onTouchListener 中进行简单的方向识别,但 event.getHistorySize() 返回 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) {
有人知道问题出在哪里吗?
【问题讨论】:
-
将您需要的历史记录保存在某种队列中,您可以通过
onTouch获得您需要的所有历史记录。仅当在此和之前对onTouch的调用之间存在多个触摸事件时,才会填充历史记录。它并不打算包含所有历史 -
那你不需要手势监听器吗?你需要自己处理这个历史,或者使用这样一个特殊的监听器。查看一些教程。