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);
    }


  • 相关阅读:
    JQ选择器
    设计模式
    招银网络面试
    斗鱼面经
    招银科技面经
    用户访问网站基本流程
    shell的条件判断
    crontab -e 和/etc/crontab的区别
    秘钥对登录配置
    CentOS6 x86_64最小化安装优化脚本
  • 原文地址:https://www.cnblogs.com/slgkaifa/p/6880209.html
Copyright © 2011-2022 走看看