【发布时间】:2015-11-27 12:08:16
【问题描述】:
我是 Android 新手,并且已经被这个问题困扰了一段时间。我正在尝试在我的应用程序中使用显示小时或分钟的数字数据的字段顶部和底部的图像视图来实现自定义时钟。到目前为止,我所做的是在这些图像视图上实现一个触摸事件,以增加我的时间或减少我的时间。
我尝试添加的一个功能是让我的文本视图识别用户的“甩动”动作,并根据甩动的方向增加/减少。
为此,我一直在网上搜索这些“fling”实现,我发现它们如下:
minute.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, final MotionEvent event) {
new GestureDetector.SimpleOnGestureListener() {
@Override
public boolean onDown(MotionEvent e) {
minute.dispatchTouchEvent(e);
Log.d("fling", "down");
return false;
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
minute.dispatchTouchEvent(event);
Log.d("fling", "Flinged.");
return true;
}
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
return false;
}
};
return false;
}
});
其中,我已将其放入 minute textview 字段的 onTouchEvent 中。
无论是否在我的 onDown 和 onFling 方法中使用 minute.dispatchTouchEvent 行,我的 logcat 中都没有任何日志,我假设此手势动作没有被分派到我的分钟字段。
我该如何解决这个问题? 提前感谢您的帮助:D
【问题讨论】: