筆者在專案開發中,碰到過針對螢幕的五指觸控測試需求,實現方式為可以自定義個view,然後在ontouchevent()方法中對motionevent進行處理,核心**如下,要注意的地方在注釋中已做說明。
@override
public boolean ontouchevent(motionevent event)
multidownx[i] = event.getx
(id)
; multidowny[i] = event.gety
(id)
; log.d
("xjg", "ontouchevent(), id = " + id + " , event.getx(id) = " + event.getx
(id)
+ " , event.gety(id) = " + event.gety
(id));
} multimovepath.get
(0).moveto
(multidownx[0], multidowny[0])
; multimovepath.get
(1).moveto
(multidownx[1], multidowny[1])
; multimovepath.get
(2).moveto
(multidownx[2], multidowny[2])
; multimovepath.get
(3).moveto
(multidownx[3], multidowny[3])
; multimovepath.get
(4).moveto
(multidownx[4], multidowny[4])
;invalidate()
;}break;
case motionevent.action_move
: downtouched = false;
fingerup = false;
movestopx = event.getrawx()
; movestopy = event.getrawy()
; movepath.lineto
(movestopx, movestopy)
; //五個手指頭的move事件處理
if (pointercount == 5)
multimovestopx[i] = event.getx
(id)
; multimovestopy[i] = event.gety
(id)
; log.d
("xjg", "ontouchevent(), move id = " + id + " , event.getx(id) = " + event.getx
(id)
+ " , event.gety(id) = " + event.gety
(id));
} multimovepath.get
(0).lineto
(multimovestopx[0], multimovestopy[0])
; multimovepath.get
(1).lineto
(multimovestopx[1], multimovestopy[1])
; multimovepath.get
(2).lineto
(multimovestopx[2], multimovestopy[2])
; multimovepath.get
(3).lineto
(multimovestopx[3], multimovestopy[3])
; multimovepath.get
(4).lineto
(multimovestopx[4], multimovestopy[4]);}
invalidate()
; break;
case motionevent.action_up
: mode = mode_none;
downtouched = false;
fingerup = true;
movepath.reset()
; downx = -1;
downy = -1;
movestopx = -1;
movestopy = -1;
invalidate()
;checkmigreen()
; break;
case motionevent.action_pointer_up:
//五個指頭up事件
if (pointercount == 5)
}invalidate()
;checkmigreen()
; break;
default
: downtouched = false;
break;
} return true;
}在這裡插入**片
android 多點觸控
下面是一些常用的函式解釋 copy過來滴.event.getaction 獲取觸控動作比如action down event.getpointercount 獲取觸控點的數量,比如2則可能是兩個手指同時按壓螢幕 event.getpointerid nid 對於每個觸控的點的細節,我們可以通過乙個迴...
Android開發中實現多點觸控的方法
多點觸控技術在實際開發過程中,用的最多的就是放大縮小功能。比如有一些瀏覽器,就可以用多個手指在螢幕上操作,對進行放大或者縮小。再比如一些瀏覽器,也可以通過多點觸控放大或者縮小字型。其實放大縮小也只是多點觸控的實際應用樣例之一,有了多點觸控技術,在一定程度上就可以創新出更多的操作方式來,實現更酷的人機...
關於android多點觸控
最近專案需要乙個多點觸控縮放的功能。然後上網查了下資料 總結一下 首先android sdk版本很重要,比如你在androidmanifest.xml中指定android minsdkversion 4 並且建工程的時候選的是android 2.2就表示你的應用相容android1.6 androi...