首页 > 代码库 > 为activity增加左右手势识别
为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); }
为activity增加左右手势识别
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。