通过拖动可从android中的列表中删除
我想要一些类似Gmail手机上的项目列表的东西 在那里,当我们水平拖动一个项目时,该项目将消失,并发生其他一些事情通过拖动可从android中的列表中删除,android,list,draggable,Android,List,Draggable,我想要一些类似Gmail手机上的项目列表的东西 在那里,当我们水平拖动一个项目时,该项目将消失,并发生其他一些事情 我想知道如何在我的对象列表中执行类似操作。这是借助于滑动删除行项目的完整代码 public void delete_operation() { list.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v
我想知道如何在我的对象列表中执行类似操作。这是借助于滑动删除行项目的完整代码
public void delete_operation() {
list.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
return gesture_detector.onTouchEvent(event);
}
});
}
GestureDetector gesture_detector = new GestureDetector(
new OnGestureListener() {
private static final int SWIPE_THRESHOLD = 100;
private static final int SWIPE_VELOCITY_THRESHOLD = 100;
@Override
public boolean onSingleTapUp(MotionEvent e) {
// TODO Auto-generated method stub
return false;
}
@Override
public void onShowPress(MotionEvent e) {
// TODO Auto-generated method stub
}
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2,
float distanceX, float distanceY) {
// TODO Auto-generated method stub
return false;
}
@Override
public void onLongPress(MotionEvent e) {
// TODO Auto-generated method stub
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2,
float velocityX, float velocityY) {
boolean result = false;
try {
float diffY = e2.getY() - e1.getY();
float diffX = e2.getX() - e1.getX();
if (Math.abs(diffX) > Math.abs(diffY)) {
if (Math.abs(diffX) > SWIPE_THRESHOLD
&& Math.abs(velocityX) > SWIPE_VELOCITY_THRESHOLD) {
if (diffX > 0) {
onSwipeRight();
} else {
row_id_ins = lst_pollution.pointToPosition(
(int) e1.getX(), (int) e1.getY());
Log.e("", "id.......row" + row_id_ins);
id_ins = row_id_ins + 1;
row_id_str = String.valueOf(id_ins);
Log.d("", "ROW ID" + row_id_str);
onSwipeLeft();
}
}
} else {
}
} catch (Exception exception) {
exception.printStackTrace();
}
return result;
}
@Override
public boolean onDown(MotionEvent e) {
// TODO Auto-generated method stub
return false;
}
});
final class gesture_detector extends SimpleOnGestureListener {
@SuppressWarnings("unused")
private static final int SWIPE_THRESHOLD = 100;
@SuppressWarnings("unused")
private static final int SWIPE_VELOCITY_THRESHOLD = 100;
}
public void onSwipeRight() {
Log.e("", "onSwipeRight");
}
public void onSwipeLeft() {
Log.e("", "onSwipeRight");
}
}
滑动以删除行项目谢谢。。。现在一切都好了。