Android 实现根据手势进行缩放的View

1.创建接受并处理View中onTouchEvent的类MultiTouchImpl,在其构造方法中需要传入监听接口,在MultiTouchImpl类中创建一个public方法onTouchEvent来接收View中传递过来的触摸事件

   写onTouchEvent方法:

ACTION为ACTION_POINTER_DOWN时(表示第二次按下):1.记录按下的两个点 2.计算缩放锚点 3.计算两点之间距离 4.抛出监听的抽象方法

ACTION为ACTION_POINTER_UP时(表示第一次抬起):1.记录抬起时的点2.判断是否发生最终缩放3.若发生缩放,则抛出监听的抽象方法,否则return false

ACTION为ACTION_MOVE时:1.记录move的点2.计算两点之间距离,并与距离的初始值进行比较,计算出缩放比例,3.抛出监听的抽象方法

import android.graphics.PointF;
import android.graphics.RectF;
import android.view.MotionEvent;// MultiTouchImpl.java 
// 实现多点触摸缩放功能public class MultiTouchImpl {enum MULTI_TOUCH_MODE {DRAG_ON, DRAG_OFF}public final static int MAX_TOUCH_POINTS = 2;MULTI_TOUCH_MODE


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部