編輯:Android開發實例
正文
一、結構
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檢測和處理包括多點觸摸在內的手勢變化信息。)
三、內部類
interface ScaleGestureDetector.OnScaleGestureListener
手勢發生時接收通知的監聽器
class ScaleGestureDetector.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 touchexample (中文)
JSON代表JavaScript對象符號。它是一個獨立的數據交換格式,是XML的最佳替代品。本章介紹了如何解析JSON文件,並從中提取所需的信息。Android提供了四個
JSON代表JavaScript對象符號。它是一個獨立的數據交換格式,是XML的最佳替代品。本章介紹了如何解析JSON文件,並從中提取所需的信息。Android提供了四個
Android提供了許多方法來控制播放的音頻/視頻文件和流。其中該方法是通過一類稱為MediaPlayer。Android是提供MediaPlayer類訪問內置的媒體播放
Android提供了許多方法來控制播放的音頻/視頻文件和流。其中該方法是通過一類稱為MediaPlayer。Android是提供MediaPlayer類訪問內置的媒體播放