Android手势左右滑动效果

Android手势左右滑动效果,第1张

概述最近想实现Android左滑d出菜单框,右滑消失菜单这个个功能。了解了一下Android的滑动事件,必须是在view组件或者Activity上实现,同时必须实现OnTouchListener,OnGestureListener这个两个接口。

最近想实现AndroID左滑d出菜单框,右滑消失菜单这个个功能。了解了一下AndroID 的滑动事件,必须是在vIEw组件或者Activity上实现,同时必须实现OntouchListener,OnGestureListener这个两个接口。

public class MyrelativeLayout extends relativeLayout implements GestureDetector.OnGestureListener{  private float mPosX,mPosY,mCurPosX,mCurPosY;  private static final int FliNG_MIN_disTANCE = 20;// 移动最小距离  private static final int FliNG_MIN_VELociTY = 200;// 移动最大速度  //构建手势探测器   GestureDetector mygesture = new GestureDetector(this);  public MyrelativeLayout(Context context){    super(context)  }  public MyrelativeLayout(Context context,AttributeSet attrs,int defStyle) {    super(context,attrs,defStyle);    // Todo auto-generated constructor stub  }  public MyrelativeLayout(Context context,AttributeSet attrs) {    super(context,attrs);    // Todo auto-generated constructor stub  }    @OverrIDe  public boolean ontouchEvent(MotionEvent arg0) {    // Todo auto-generated method stub    return mDetector.ontouchEvent(arg0);  }  @OverrIDe  public boolean onSingleTapUp(MotionEvent e) {    // Todo auto-generated method stub    return false;  }  @OverrIDe  public boolean onScroll(MotionEvent e1,MotionEvent e2,float distanceX,float distanceY) {    // Todo auto-generated method stub    return false;  }  @OverrIDe  public boolean onDown(MotionEvent e) {    // Todo auto-generated method stub    return false;  }  @OverrIDe  public voID onShowPress(MotionEvent e) {    // Todo auto-generated method stub  }   @OverrIDe  public boolean onFling(MotionEvent e1,float veLocityX,float veLocityY) {    // Todo auto-generated method stub    // e1:第1个ACTION_DOWN MotionEvent      // e2:最后一个ACTION_MOVE MotionEvent      // veLocityX:X轴上的移动速度(像素/秒)      // veLocityY:Y轴上的移动速度(像素/秒)      // X轴的坐标位移大于FliNG_MIN_disTANCE,且移动速度大于FliNG_MIN_VELociTY个像素/秒      //向左     if (e1.getY() - e2.getY() > FliNG_MIN_disTANCE){   //           && Math.abs(veLocityX) > FliNG_MIN_VELociTY) {         collapse();       }      //向上     if (e2.getY() - e1.getY() > FliNG_MIN_disTANCE              && Math.abs(veLocityX) > FliNG_MIN_VELociTY) {    }         return false;     } }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

总结

以上是内存溢出为你收集整理的Android手势左右滑动效果全部内容,希望文章能够帮你解决Android手势左右滑动效果所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1143821.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-31
下一篇2022-05-31

发表评论

登录后才能评论

评论列表(0条)

    保存