博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
安卓手势
阅读量:5136 次
发布时间:2019-06-13

本文共 1668 字,大约阅读时间需要 5 分钟。

//在屏幕划过时触发该方法

onFling(MotionEvent event1, MotionEvent event2,

            float velocityX, float velocityY)

    velocityX = velocityX > 4000 ? 4000 : velocityX;

        velocityX = velocityX < -4000 ? -4000 : velocityX;
      
 // 根据手势的速度来计算缩放比,如果velocityX>0,放大图像,否则缩小图像。
        currentScale += currentScale * velocityX / 4000.0f;
      
 // 保证currentScale不会等于0
        currentScale = currentScale > 0.01 ? currentScale : 0.01f;
      
 // 重置Matrix
        matrix.reset();
        
// 缩放Matrix
        matrix.setScale(currentScale, currentScale, 160, 200);
        BitmapDrawable tmp =
                (BitmapDrawable) imageView.getDrawable();
      
 // 如果图片还未回收,先强制回收该图片
        if (!tmp.getBitmap().isRecycled()) // ①
        {
            tmp.getBitmap().recycle();
        }
     
   // 根据原始位图和Matrix创建新图片
        Bitmap bitmap2 = Bitmap.createBitmap
                (bitmap, 0, 0, width, height,matrix, true);
      
 // 显示新的位图
        imageView.setImageBitmap(bitmap2);
        return true;
    }

//    e1: The first down motion event that started the fling.

//    手势起点的移动事件
//    e2: The move motion event that triggered the current onFling.
//    当前手势点的移动事件
//    velocityX: The velocity of this fling measured in pixels per second along the x axis.
//    每秒x轴方向移动的像素
//    velocityY: The velocity of this fling measured in pixels per second along the y axis.
//    每秒y轴方向移动的像素
//    
//    说的更简单点就是,鼠标手势相当于一个向量(当然有可能手势是曲线),
//    e1为向量的起点,e2为向量的终点,
//    velocityX为向量水平方向的速度,velocityY为向量垂直方向的速度

//触碰时触发

public boolean onDown(MotionEvent arg0) {    }

//长按时可触发

public void onLongPress(MotionEvent event) {

    }

//在屏幕上滚动时可以触发,滚动相对于滑动速度较慢

public boolean onScroll(MotionEvent event1, MotionEvent event2,

            float distanceX, float distanceY) {
    }

//在屏幕上按而没有离开移动时触发

public void onShowPress(MotionEvent event) {

    }

//轻击时触发该方法

public boolean onSingleTapUp(MotionEvent event) {

      
    }

转载于:https://www.cnblogs.com/red-tomato/p/5459757.html

你可能感兴趣的文章
201421410014蒋佳奇
查看>>
【03月04日】A股滚动市盈率PE历史新低排名
查看>>
Xcode5和ObjC新特性
查看>>
jvm slot复用
查看>>
高并发系统数据库设计
查看>>
LibSVM for Python 使用
查看>>
Centos 7.0 安装Mono 3.4 和 Jexus 5.6
查看>>
Windows 7 上安装Visual Studio 2015 失败解决方案
查看>>
iOS按钮长按
查看>>
Shell流程控制
查看>>
CSS属性值currentColor
查看>>
[Leetcode|SQL] Combine Two Tables
查看>>
《DSP using MATLAB》Problem 7.37
查看>>
ROS lesson 1
查看>>
js笔记
查看>>
c风格字符串函数
查看>>
python基础学习第二天
查看>>
java可重入锁reentrantlock
查看>>
浅谈卷积神经网络及matlab实现
查看>>
struts2学习(9)struts标签2(界面标签、其他标签)
查看>>