Android手势滑动事件
2014-04-30 16:25
387 查看
手机进入智能时代,手机屏幕的滑动成为人们每天操作手机的必然操作方式。android 手机中的操作是什么样的呢,下面我们来看一下。
public class TankOneActivity extends BaseActivity implements OnTouchListener, OnGestureListener, OnClickListener { GestureDetector mGestureDetector; private int verticalMinDistance = 20; private int minVelocity = 0; ImageView imageView; float start; float end; int i = 0; /*** 底部按钮 ***/ Button btn_dizuo; @SuppressWarnings("deprecation") @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.tankone_layout); mGestureDetector = new GestureDetector((OnGestureListener) this); initui(); } /** * 初始化控件 */ private void initui() { // TODO Auto-generated method stub imageView = (ImageView) findViewById(R.id.tank_img); imageView.setBackgroundResource(ImageUtils.img[0]); // 显示第一长图片 imageView.setOnTouchListener(this); imageView.setLongClickable(true); btn_dizuo = (Button) findViewById(R.id.btn_one); btn_dizuo.setOnClickListener(this); } @Override public void onClick(View v) { // TODO Auto-generated method stub if (v == btn_dizuo) { ToActivityPushDown(DiZuoActivity.class, null); } } @Override public boolean onDown(MotionEvent e) { // TODO Auto-generated method stub start = e.getX(); return false; } @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { // TODO Auto-generated method stub return false; } @Override public void onLongPress(MotionEvent e) { // TODO Auto-generated method stub } @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { // TODO Auto-generated method stub if (e1.getX() - e2.getX() > verticalMinDistance && Math.abs(distanceX) > minVelocity) { end = e2.getX(); if (start - end > 0) { if (i >= 0 && i < ImageUtils.img.length - 1) { i++; imageView.setBackgroundResource(ImageUtils.img[i]); } start = end; if (i == 80) { i = 0; } } } else if (e2.getX() - e1.getX() > verticalMinDistance && Math.abs(distanceX) > minVelocity) { // System.out.println("向右滑动"); end = e2.getX(); if (end - start > 0) { if (i > 0 && i <= ImageUtils.img.length - 1) { i--; imageView.setBackgroundResource(ImageUtils.img[i]); } start = end; if (i == 0) { i = 80; } } } return false; } @Override public void onShowPress(MotionEvent e) { // TODO Auto-generated method stub } @Override public boolean onSingleTapUp(MotionEvent e) { // TODO Auto-generated method stub return false; } @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub return mGestureDetector.onTouchEvent(event); } }
相关文章推荐
- android手势操作滑动效果触摸屏事件处理
- android手势操作滑动效果触摸屏事件处理
- android触摸屏事件手势操作滑动处理
- android手势操作滑动效果触摸屏事件处理
- android手势操作滑动效果触摸屏事件处理
- Android:实现手势滑动的事件处理方法
- android手势操作滑动效果触摸屏事件处理
- android onTouchEvent 左右手势滑动事件处理
- android手势操作滑动效果触摸屏事件处理
- Android:实现手势滑动的事件处理方法
- android手势操作滑动效果触摸屏事件处理
- android手势操作滑动效果触摸屏事件处理
- Android手势处理及模拟滑动事件
- android手势操作滑动效果触摸屏事件处理
- android onTouchEvent 左右手势滑动事件处理
- android手势操作滑动效果触摸屏事件处理
- android onTouchEvent 左右手势滑动事件处理
- android手势操作滑动效果触摸屏事件处理
- android手势操作滑动效果触摸屏事件处理 .
- Android:实现手势滑动的事件处理方法