android - ListView 水平滑动手势

标签 android listview

我有一个显示给定日期条目的 ListView 。 ListView 上方有一些按钮,可让您增加/减少日期。一切正常。我想要做的是替换这些按钮并让用户向右/向左滑动以增加/减少日期。

解决此问题的最佳方法是什么?我不在乎刷过什么项目,通常在给定日期的 ListView 中不会有任何项目,只要它发生在 ListView 区域上即可。我已经对这些项目进行了点击和长按监听。

最佳答案

只需实现 OnGestureListener。

public class MyListActivity extends ListActivity implements OnGestureListener

使用手势检测器

GestureDetector detector = new GestureDetector(this, this);

将列表的触摸事件传递给GestureDetector

listView.setOnTouchListener(new OnTouchListener() {
    public boolean onTouch(View view, MotionEvent e) {
        detector.onTouchEvent(e);
        return false;
    }
});

最后使用fling 方法检测手势。您可以使用速度值来检测运动的方向。

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {}

关于android - ListView 水平滑动手势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5481814/

相关文章:

c# - 从数据集中的数据表中删除一行

Android:像 RetailMeNot 应用程序一样的 ListView

android - XMPP 交货收据 XEP-0184 与 ASMACK

android - android中的singleTask launchMode无法正常工作

android - 您的项目包含错误,请在运行前修复它

android - 如何在运行时获取布局的高度和宽度?

c# - 在标签中显示 ListView 行

c# - 如何防止 ListView 扩展窗口维度?

java - 查看页面指示器 : listview empty in fragment empty on second time showing

android - 通过 PreferenceActivity 选项启动另一个 PreferenceScreen