ScaleGestureDetector SimpleOnScaleGestureListener縮放手勢識別器

//1、創建手勢識別器
private ScaleGestureDetector scaleGestureDetector  = new ScaleGestureDetector(getApplicationContext()
,new MyScaleOnGestureListener());
//2、給手勢識別器傳遞  觸摸事件
@Override
public boolean onTouchEvent(MotionEvent event) {
    return scaleGestureDetector.onTouchEvent(event);
}
//3、實現  手勢識別器的回掉接口
public class MyScaleOnGestureListener   extends ScaleGestureDetector.SimpleOnScaleGestureListener{
    @Override
    public boolean onScale(ScaleGestureDetector detector) {
        //可以獲得的一些參數
        detector.getCurrentSpan();//兩點間的距離跨度
        detector.getCurrentSpanX();//兩點間的x距離
        detector.getCurrentSpanY();//兩點間的y距離
	detector.getFocusX();       //獲得兩手指點之間的 中點X值
	detector.getFocusY();       //獲得兩手指點之間的 中點Y值
detector.getPreviousSpan(); //上次 兩點間的距離跨度 detector.getPreviousSpanX();//上次 detector.getPreviousSpanY();//上次 detector.getEventTime(); //當前事件的事件 detector.getTimeDelta(); //兩次事件間的時間差 detector.getScaleFactor(); //與上次事件相比,得到的比例因子 //getScaleFactor() = getCurrentSpan()/getPreviousSpan(); return true ; } @Override public void onScaleEnd(ScaleGestureDetector detector) { } @Override public boolean onScaleBegin(ScaleGestureDetector detector) { return true; }}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章