今天就跟大家聊聊有關(guān)怎么在Android應(yīng)用中實現(xiàn)一個手勢操作識別功能,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
成都創(chuàng)新互聯(lián)公司于2013年創(chuàng)立,先為蓬溪等服務(wù)建站,蓬溪等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為蓬溪企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。首先,在Android系統(tǒng)中,每一次手勢交互都會依照以下順序執(zhí)行。
1. 接觸接觸屏一剎那,觸發(fā)一個MotionEvent事件。
2. 該事件被OnTouchListener監(jiān)聽,在其onTouch()方法里獲得該MotionEvent對象。
3. 通過GestureDetector(手勢識別器)轉(zhuǎn)發(fā)次MotionEvent對象至OnGestureListener。
4. OnGestureListener獲得該對象,聽根據(jù)該對象封裝的的信息,做出合適的反饋。
這個順序可以說就是手勢交互的原理,下面一同來了解一下MotionEvent、GestureDetector和OnGestureListener。
MotionEvent: 這個類用于封裝手勢、觸摸筆、軌跡球等等的動作事件。其內(nèi)部封裝了兩個重要的屬性X和Y,這兩個屬性分別用于記錄橫軸和縱軸的坐標(biāo)。
GestureDetector: 識別各種手勢。
OnGestureListener: 這是一個手勢交互的監(jiān)聽接口,其中提供了多個抽象方法,并根據(jù)GestureDetector的手勢識別結(jié)果調(diào)用相對應(yīng)的方法。
下面我再通過一個切換圖片的代碼示例,演示一下手勢交互的實現(xiàn),讓大伙對上面的執(zhí)行順序,以及各手勢動作的區(qū)分有一個更加深刻的了解和記憶。
首先,提供一個只有ImageView的布局文件——main.xml。
<?xml version="1.0" encoding="utf-8"?>