滑动检测列表视图的每一行

我有一张位于SD卡上的视频列表。 在这一点上,我只需要帮助为列表视图中的每一行创建手势或轻扫检测。 感谢这个问题在stackoverflow在网格布局上的手势检测,我实现了列表视图上的手势。 现在,它可以轻松检测用户在正确方向或向左方向滑动的情况。 但是这个手势是针对整个列表视图的。 我只是想知道如何为单个行实现这种轻扫检测。 例如,应用程序现在可以打印“右击”,“左击”。 我只是想让它像“在第一排右击”,“在第三排左击”等等。我希望我的问题很清楚。

期待一些有用的回复。 谢谢


看看这个答案,并在onFling事件中使用onFling方法

@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
    try {
        Toast.makeText( listAdapter.getItem( listView.pointToPosition(Math.round(e1.getX()), Math.round(e1.getY())).toString());
        return super.onFling();
    } catch( Exception e ) {
        // do nothing
    }
}

我在我的解决方案中使用了每个项目的方法 - 请看看这里我的刷卡检测代码可能与标准刷卡检测有点不同,但它对我来说非常合适。 我使用附加的标签来获取项目相关数据。 希望有帮助,但如果你确实有一些问题,请告诉我,我会尽量详细解释。


按照我的意见是使用布尔值的项目,当该项目被触摸设置为true时,使用onTouchListener,

ListItem.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View arg0, MotionEvent event) {
            click=true;
            return click;


        }

    });`

那么你可以重写这个:

 @Override
public boolean dispatchTouchEvent(MotionEvent ev){
super.dispatchTouchEvent(ev);
Log.v("Inside", "=====Dispatch Event===");
if(click){
    Log.v("Inside", "=====Dispatch Event=T==");
    click=false;
     return gestureDetector.onTouchEvent(ev);

}else{
    return false;
}

}
链接地址: http://www.djcxy.com/p/91261.html

上一篇: Swipe detection for each row of listview

下一篇: ListView Fling is not working