簡介:手勢是連續(xù)觸碰的行為懈万,比如左右上下滑動屏幕呀忧,又或者畫一些不規(guī)則的幾何圖形辞友。
支持:1.Android提供手勢檢測栅哀,并為手勢識別提供了相應(yīng)的監(jiān)聽器。
? ? ? ? ? ?2.Android運行開發(fā)者自行添加手勢,并且提供了相應(yīng)的API識別用戶手勢昌屉。
1.Android中手勢交互的執(zhí)行順序
? ? ? ? ? MotionEvent —— onTouchListener —— GestureDetector —— OnGestureListener —— MotionEvent
? ? ? ? ? 通過GestureDetector轉(zhuǎn)發(fā)MotionEvent對象給OnGestureListener
? ? ? ? ? MotionEvent:?這個類用于封裝手勢钙蒙、觸摸筆、軌跡球等等的動作事件间驮。封裝了X躬厌、Y軸坐標等重要屬性。
? ? ? ? ? GestureDetector: 識別各種手勢竞帽。
? ? ? ? ? OnGestureListener:這是一個手勢交互的監(jiān)聽接口扛施,提供了多個抽象方法, 并根據(jù)手勢識別結(jié)果調(diào)用相對應(yīng)的方法屹篓。
2.GestureListener詳解:
? ? ? ? ? 按下(onDown): 剛剛手指接觸到觸摸屏的那一剎那疙渣,就是觸的那一下。
? ? ? ? ? 拋擲(onFling): 手指在觸摸屏上迅速移動堆巧,并松開的動作妄荔。
? ? ? ? ? 長按(onLongPress): 手指按在持續(xù)一段時間,并且沒有松開谍肤。
? ? ? ? ? 滾動(onScroll): 手指在觸摸屏上滑動啦租。
? ? ? ? ? 按住(onShowPress): 手指按在觸摸屏上荒揣,它的時間范圍在按下起效篷角,在長按之前。
? ? ? ? ? 抬起(onSingleTapUp):手指離開觸摸屏的那一剎那系任。
實現(xiàn): Step 1: 創(chuàng)建GestureDetector對象恳蹲,創(chuàng)建時需實現(xiàn)GestureListener傳入。
? ? ? ? ? ? Step 2: 將Activity或者特定組件上的TouchEvent的事件交給GestureDetector處理即可俩滥。嘉蕾、
簡單使用:
1.使用OnGestureListener(需要實現(xiàn)所有抽象方法)
2.使用SimpleOnGestureListener(推薦)
? ?可以選擇性實現(xiàn)抽象方法
添加自定義手勢:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"