Android程序如何实现触屏移动

Android程序如何实现触屏移动 

Java代码   
public class DayCell extends View   implements 
GestureDetector.OnGestureListener {    
    GestureDetector mGestureDetector;    
....      p* s0 O!  f) p+ t     k2 Q9 U  
    public DayCell(Context context) {    
        super(context);   -   I' ^4 A$ `$  y  
        setFocusable(true);    
        mGestureDetector = new GestureDetector(DayCell.this);    
        //setLongClickable(true);     
    }    
......   6 {% C: n4 g: y+ M'  G 
    @Override  7 k/ J( }# e. [5 `(  _ 
    public boolean onTouchEvent(MotionEvent event) {    
      return mGestureDetector.onTouchEvent(event);    ( Y% U) |' `9 O -   Y 
    }    
  @Override  8 O2 m: |6 E5 f -   l 
  public boolean onDown(MotionEvent e) {    
    return true;//一定的返回true,如果不是好像没有反应。   .  \ 5 p$ G7 C7 r/ Q/ t& ?  
  }    
   
  @Override  # B! i) r" E1 b+ W2 m+ ~! q  
  public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float 
velocityY) {    
    // 左       m4 M9 R9 p( Z-   B, A  
    if (e1.getX() - e2.getX() > 100 && Math.abs(velocityX) > 200) {//移动的距
离和速度   5 _( b. t6 `2 ^+  }5 H-   w! o  
      ...    
    } // 右    
    else if (e2.getX() - e1.getX() > 100 && Math.abs(velocityX) > 200) {    
      ...   ( m. Q7 Q# _. }    D; z-   H$ q  
    }//上   " b! a5 ?9 f# r+ ?% R  
    else if (e1.getY() - e2.getY() > 100 && Math.abs(velocityY) > 200) {   & L, W5 E' p2  [  
    ...   # Y1 i! x" e8 r    X" K;  z 
    } // 下    
    else if (e2.getY() - e1.getY() > 100 && Math.abs(velocityY) > 200) {    
     ...    
    }   5 P9 \ ! _5 C.  O 
    return true;   % {& ]: V-   W; o* H7 C; ?* e  
  }    
   
浪曦网-国内顶级IT 视频网络编程教育平台  Www.LangSin.Com 
 
  浪曦网-国内顶级IT 视频网络编程教育平台  Www.LangSin.Com 
  @Override   
  public void onLongPress(MotionEvent e) {    
       8 f4 R. A' E: I -   F4 Z  
  }    
   
  @Override  5 h7 U9 \ " m6 S( I     L7 I/ A) R"  [  
  public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float 
distanceY) {   6 A    ?0 c9 B) b&  I8  k  
    // TODO Auto-generated method stub    
    return false;    
  }    
   
  @Override  -   N% c1 c-   V7 |% h 
  public void onShowPress(MotionEvent e) {    
       ( g/ j* |) m! ]6 ], {6 r* l 
  }    
   
  @Override  9 k% d0 X* ~, J4 q 
  public boolean onSingleTapUp(MotionEvent e) {   -   @6 t/ ~3 M( c 
  ..    
    return true;    
  }    
}

转载于:https://my.oschina.net/u/856651/blog/93986

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值