zoukankan      html  css  js  c++  java
  • 为activity添加左右手势识别

    android开发中为activity添加左右手势识别。如右滑关闭当前页面

    /*
      *  for左右手势
      *  1.复制以下的内容到目标Activity
      *  2.目标Activity的onCreate()调用initGesture()
      *  3.目标Activity需implements OnTouchListener, OnGestureListener
      */
     private GestureDetector mGestureDetector;
     private int verticalMinDistance = 180;
     private int minVelocity         = 0;
     
     private void initGesture() {
         mGestureDetector = new GestureDetector((OnGestureListener) this);
     }
     
     public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
     
         if (e1.getX() - e2.getX() > verticalMinDistance && Math.abs(velocityX) > minVelocity) {
     
             // 切换Activity
             // Intent intent = new Intent(ViewSnsActivity.this, UpdateStatusActivity.class);
             // startActivity(intent);
             //Toast.makeText(this, "向左手势", Toast.LENGTH_SHORT).show();
         } else if (e2.getX() - e1.getX() > verticalMinDistance && Math.abs(velocityX) > minVelocity) {
     
             // 切换Activity
             // Intent intent = new Intent(ViewSnsActivity.this, UpdateStatusActivity.class);
             // startActivity(intent);
             //Toast.makeText(this, "向右手势", Toast.LENGTH_SHORT).show();
             finish();
             overridePendingTransition(R.anim.push_right_in, R.anim.push_right_out);
         }
     
         return false;
     }
      
     @Override
     public void onLongPress(MotionEvent arg0) {
         // TODO Auto-generated method stub
          
     }
     
     @Override
     public boolean onScroll(MotionEvent arg0, MotionEvent arg1, float arg2,
             float arg3) {
         // TODO Auto-generated method stub
         return false;
     }
     
     @Override
     public void onShowPress(MotionEvent arg0) {
         // TODO Auto-generated method stub
          
     }
     
     @Override
     public boolean onSingleTapUp(MotionEvent arg0) {
         // TODO Auto-generated method stub
         return false;
     }
     
     @Override
     public boolean onTouch(View v, MotionEvent event) {
         // TODO Auto-generated method stub
         return mGestureDetector.onTouchEvent(event);
     }
     
     @Override
     public boolean onDown(MotionEvent arg0) {
         // TODO Auto-generated method stub
         return false;
     }
      
     @Override 
     public boolean dispatchTouchEvent(MotionEvent ev) {
         mGestureDetector.onTouchEvent(ev);
         return super.dispatchTouchEvent(ev);
    }


  • 相关阅读:
    第八周上机作业
    第七周课后作业
    第七周上机作业
    第六周课后作业
    第六周上机
    第九周JAVA
    第八周JAVA
    第8次JAVA作业
    第七周JAVA
    第7周JAVA
  • 原文地址:https://www.cnblogs.com/slgkaifa/p/6880209.html
Copyright © 2011-2022 走看看