public class ScaleGestureDetector extends Object

  • java.lang.Object

    • android.view.ScaleGestureDetector

类概述

根据接收的 MotionEvent,  侦测由多个触点(多点触控)引发的变形手势。callback 方法ScaleGestureDetector.OnScaleGestureListener  会在特定手势事件发生时通知用户

。该类仅能和 Touch 事件引发的 MotionEvent 配合使用。使用该类需要

  • 为你的 View 创建 ScaleGestureDetector  实例
  • 确保在 onTouchEvent(MotionEvent)方法中调用 onTouchEvent (MotionEvent)
  • 前者为该类的 onTouchEvent 方法,后者为 View 的 onTouchEvent 方法。在事件发生时,定义在 callback 中的方法会被调用。

ScaleGestureDetector 为 Android2.2 新增的类,允许 Views 可以通过提供的MotionEvents 检测和处理包括多点触摸在内的手势变化信息。

内部类

  1. interface ScaleGestureDetector.OnScaleGestureListener手势发生时接收通知的监听器
  2. classScaleGestureDetector.SimpleOnScaleGestureListener 若仅想监听一部分尺寸伸缩事件,可继承该类。

公共构造方法

public ScaleGestureDetector (Context context, ScaleGestureDetector.OnScaleGestureListener listener)

公共方法

public float getCurrentSpan ()

返回手势过程中,组成该手势的两个触点的当前距离。

返回值:以像素为单位的触点距离。

public long getEventTime ()

返回事件被捕捉时的时间。

返回值以毫秒为单位的事件时间。

public float getFocusX ()

返回当前手势焦点的 X 坐标。

  • 如果手势正在进行中,焦点位于组成手势的两个触点之间。
  • 如果手势正在结束,焦点为仍留在屏幕上的触点的位置。
  • 若 isInProgress()返回 false,该方法的返回值未定义。

返回值:返回焦点的 X 坐标值,以像素为单位。

public float getFocusY ()

返回当前手势焦点的 Y 坐标。

  • 如果手势正在进行中,焦点位于组成手势的两个触点之间。
  • 如果手势正在结束,焦点为仍留在屏幕上的触点的位置。
  • 若 isInProgress()返回 false,该方法的返回值未定义。

返回值返回焦点的 Y 坐标值,以像素为单位。

public float getPreviousSpan ()

返回手势过程中,组成该手势的两个触点的 前一次距离。

返回值两点的前一次距离,以像素为单位。

public float getScaleFactor ()

返回从前一个伸缩事件至当前伸缩事件的 伸缩比率。该值定义为 (getCurrentSpan() / getPreviousSpan())。

返回值当前伸缩比率.

public long getTimeDelta ()

返回前一次接收到的伸缩事件距当前伸缩事件的 时间差,以毫秒为单位。

返回值从前一次伸缩事件起始的时间差,以毫秒为单位。

public boolean isInProgress ()

如果 手势处于进行过程中,返回 true.

返回值如果手势处于进行过程中,返回 true。否则返回 false。

Android_ScaleGestureDetector多点触控相关推荐

  1. android怎么监听多点触摸_什么是多点触控技术,有哪些用途

    自从乔布斯将触控技术用于苹果手机上,很多的手机厂商纷纷效仿,触控技术几乎成为手机的"标配".其实,触控技术早就存在,只是一直未能大面积用于各种设备中,本文将带您认识神奇的触控技术. ...

  2. Android 多点触控 MotionEvent详解

    相关API 介绍 MotionEvent.getY() 和 MotionEvent.getRawY() 的区别 getY 表示触摸事件在当前的View内的Y 坐标, getRawY表示触摸事件在整个屏 ...

  3. 【Android 应用开发】多点触控 ( 多点触控事件 | PointerId | PointerIndex | 坐标获取 | 触摸点个数 )

    文章目录 I . 多点触控事件 II . PointerId 与 PointerIndex 简介 III . 本次 PointerId 与 PointerIndex 获取 IV . PointerId ...

  4. Windows Phone 7范例游戏Platformer实战5——多点触控编程

    即使是再有经验的XNA程序员,在开始Windows Phone 7上的游戏开发时也不得不学习下多点触控这个新的实现方法.虽然目前有些Windows Phone 7手机附带了键盘,但是为了对所有WP7手 ...

  5. android 关闭多点触控_Cocos Creator关闭多点触摸的问题

    一. 方案一:改写Node的派发事件 方法:改写node的派发事件,当有多个响应的时候不去进行dispatch. 在游戏开启的时候把node原来的方法: cc.Node.prototype.dispa ...

  6. Android多点触控MultiTouch浅析

    申明: 参考:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2013/0226/914.html 下面实现如何通过应用层支持多点触控操作, ...

  7. Android开发实例之多点触控程序

    智能终端设备的多点触控操作为我们带来了种种炫酷体验,这也使得很多Android开发者都对多点触控程序的开发感兴趣.实际上多点触控程序的实现并不是那么遥不可及,而是比较容易.本文就主要通过一个实例具体讲 ...

  8. android 多点触控缩放,Android多点触控(图片的缩放Demo)

    本文主要介绍Android的多点触控,使用了一个图片缩放的实例,来更好的说明其原理.需要实现OnTouchListener接口,重写其中的onTouch方法. 实现效果图: 源代码: 布局文件: ac ...

  9. 89600 matlab,是德KEYSIGHT N9000B CXA 信号分析仪,多点触控,9 kHz 至 26.5 GHz

    是德KEYSIGHT N9000B CXA 信号分析仪,多点触控,9 kHz 至 26.5 GHz 产品名称:CXA 信号分析仪,多点触控,9 kHz 至 26.5 GHz 产品型号:N9000B 厂 ...

最新文章

  1. unity工程包怎么上传git_如何将Git用于Unity3D源代码管理?
  2. python语言入门w-python基础知识(一)
  3. hp-ux_UX中的格式塔-或-为什么设计师如此讨厌间距
  4. python bool类型如何与整数比较_Python入门必读bool类型和比较运算符
  5. Exchange 2007升级exchange 2010
  6. L1-080 乘法口诀数列 (20 分)-PAT 团体程序设计天梯赛 GPLT
  7. 物流公司老板血泪史:我如何被山寨版物流软件毁掉
  8. linux buffer cache 过高_你真的理解Linux的内存监控吗?
  9. X264结构体中的变量解释
  10. 使用openssl库实现des,3des加密
  11. (1.4.10)SXF笔试题汇总
  12. 家庭计算机上网必须用到的设备,家庭网络中常见的几种网络设备介绍
  13. uniapp点击打开外部应用跳转链接,指定App打开应用市场
  14. 中国大数据论坛第八期教育成都沙龙成功
  15. 回归模型效果评估系列3-R平方
  16. 安装vue环境,并新建Vue项目
  17. DHCP服务配置-Cisco模拟器
  18. Evernote和有道云笔记的比较
  19. ORA-12514 登录oracle数据库报错:ORA-12514
  20. 这款实现 C++、Java、Python 代码互译的工具,很强!

热门文章

  1. 如何满足从Jama需求到测试和代码的可追溯性?
  2. 移动应用程序设计基础——点菜单列表实现
  3. QQ聊天记录器演示程序
  4. Tesseract OCR与文本智能识别
  5. SyntaxError: EOL while scanning string literal【已解决】
  6. 量化交易领域最缺的人才!
  7. 道路建设(最小生成树)
  8. linux骚操作之第二十话DNS
  9. 斯坦福大学 iOS 开发公开课总结
  10. 高中数学必修和选修知识点全归纳