2012-04-28 4 views
1

Я хотел бы реализовать жест слайдов (слайд влево или вправо) в элементе ViewGroup для его удаления. Я также хотел бы сделать элемент за пальцем (перетаскивая его по горизонтали), чтобы удалить его. Я не нашел примеров. Кул, пожалуйста, предложите мне, где я мог бы смотреть?Элемент слайда Android для удаления

Благодаря

ответ

4
public class SelectFilterActivity extends Activity implements OnClickListener 
{ 
private static final int SWIPE_MIN_DISTANCE = 120; 
private static final int SWIPE_MAX_OFF_PATH = 250; 
private static final int SWIPE_THRESHOLD_VELOCITY = 200; 
private GestureDetector gestureDetector; 
View.OnTouchListener gestureListener; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    /* ... */ 

    // Gesture detection 
    gestureDetector = new GestureDetector(new MyGestureDetector()); 
    gestureListener = new View.OnTouchListener() { 
     public boolean onTouch(View v, MotionEvent event) { 
      return gestureDetector.onTouchEvent(event); 
     } 
    }; 

} 

class MyGestureDetector extends SimpleOnGestureListener { 
    @Override 
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { 
     try { 
      if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH) 
       return false; 
      // right to left swipe 
      if(e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) { 
       Toast.makeText(SelectFilterActivity.this, "Left Swipe", Toast.LENGTH_SHORT).show(); 
      } else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) { 
       Toast.makeText(SelectFilterActivity.this, "Right Swipe", Toast.LENGTH_SHORT).show(); 
      } 
     } catch (Exception e) { 
      // nothing 
     } 
     return false; 
    } 

} 
+0

Спасибо ... но где я понимаю, какой элемент вовлечен? – Matroska

+0

ссылка http://stackoverflow.com/questions/4373485/android-swipe-on-list –

+0

Хорошо, так что это кажется выполнимым, но я не понимаю, как перемещать представление (перетаскивая его), чтобы показать движение. Можете ли вы мне помочь? – Matroska

 Смежные вопросы

  • Нет связанных вопросов^_^