陳俊彥
【摘 要】研究不同年齡段用戶對(duì)各種觸摸操作手勢(shì)的掌握能力,測(cè)試不同手勢(shì)在安卓設(shè)備上對(duì)小孩,中年人和老人的可用性。
【關(guān)鍵詞】觸摸屏操作手勢(shì);數(shù)據(jù)分析
中圖分類號(hào): TP391.41文獻(xiàn)標(biāo)識(shí)碼: A文章編號(hào): 2095-2457(2019)04-0127-002
DOI:10.19694/j.cnki.issn2095-2457.2019.04.051
0 引言
觸摸屏界面有顯而易見的優(yōu)點(diǎn),能夠更快的與設(shè)備通過多點(diǎn)觸控產(chǎn)生互動(dòng)。[1]雖然多點(diǎn)觸控手勢(shì)在2009年之后就步入了發(fā)展高峰,但是關(guān)于智能設(shè)備上多點(diǎn)觸控手勢(shì)用戶體驗(yàn)研究比較滯后。本文將對(duì)經(jīng)常使用的8種基礎(chǔ)手勢(shì)進(jìn)行實(shí)際測(cè)量研究,探討不同年齡段的人群對(duì)操作手勢(shì)的適應(yīng)程度。
1 多點(diǎn)觸控研究應(yīng)用程序程序開發(fā)
多點(diǎn)觸控(Multitouch),又稱多重觸控,多觸控。是采用人機(jī)交互和硬件設(shè)備共同使用的技術(shù)。在沒有傳統(tǒng)輸入設(shè)備的情況下,移動(dòng)設(shè)備能夠接收到多根手指進(jìn)行手勢(shì)識(shí)別、操控。常用的手勢(shì)可以分為四大類8種,測(cè)試成功率和完成時(shí)間,每個(gè)受測(cè)者有兩次機(jī)會(huì),如若第一次完成,則不必第二次,反之,則需要進(jìn)行第二次測(cè)試。
設(shè)計(jì)一個(gè)程序進(jìn)行手勢(shì)測(cè)量,目的是為了獲取不同性別和年齡段對(duì)手勢(shì)操作的適應(yīng)度。
程序分成4部分,分別測(cè)試Tab類動(dòng)作、Drag類動(dòng)作、Scale類動(dòng)作、Rotate類動(dòng)作。
四類操作的源程序代碼如下:
1.1 點(diǎn)擊類動(dòng)作
public boolean onTouchEvent(MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
if (firstTime == 0) {
firstTime = System.currentTimeMillis();
}
break;
case MotionEvent.ACTION_UP:
break;
}
return super.onTouchEvent(event);
}
根據(jù)Android系統(tǒng)檢測(cè)到的MotionEvent.ACTION_DOWN手勢(shì)按下屏幕動(dòng)作,記錄按下時(shí)間。MotionEvent.ACTION_UP手勢(shì)抬起屏幕動(dòng)作,截止記錄時(shí)間。
1.2 拖拽類動(dòng)作
public boolean onTouchEvent(MotionEvent event) {
if (getFinalTime)
return false;
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
if (startTime == 0) {
startTime = System.currentTimeMillis();
}
break;
case MotionEvent.ACTION_MOVE:
moveView(ivCat,event.getX(),event.getY() - Utils.getStatusBarHeight(this));
break;
case MotionEvent.ACTION_UP:
long l = System.currentTimeMillis();
if (Math.abs(ivCat.getX() - ivCatEmpty.getX()) < 10
&& Math.abs(ivCat.getY() - ivCatEmpty.getY()) < 10) {
mVibrator.vibrate(200);
tv1.setText("移動(dòng)手勢(shì)成功:" + (l - startTime) + "毫秒");
} else {
tv1.setText("移動(dòng)手勢(shì)失?。? + (l - startTime) + "毫秒");
}
tv1.setVisibility(View.VISIBLE);
ToastUtils.showToast("耗時(shí):" + (l - startTime) + "毫秒");
getFinalTime = true;
break;
}
return super.onTouchEvent(event);
}
位移計(jì)算函數(shù):
/* 設(shè)置View的布局屬性,使得view隨著手指移動(dòng) */
private void moveView(View view, float x, float y) {
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) view.getLayoutParams();
params.leftMargin = (int) x - ivCat.getWidth() / 2;
params.topMargin = (int) y - ivCat.getHeight() / 2;
view.setLayoutParams(params);
}
1.2.1 雙指旋轉(zhuǎn)
雙指動(dòng)作中,多了兩個(gè)MotionEvent。
case MotionEvent.ACTION_POINTER_DOWN:
case MotionEvent.ACTION_POINTER_UP:
MotionEvent.ACTION_POINTER_DOWN在多指按下屏幕時(shí)候產(chǎn)生,使用全局變量記錄手指數(shù)量;
MotionEvent.ACTION_POINTER_UP ? 在多指離開屏幕時(shí)候產(chǎn)生,使用全局變量記錄手指數(shù)量。
1.2.2 縮放類動(dòng)作
雙指縮放,需要處理MotionEvent.ACTION_POINTER_DOWN、MotionEvent.ACTION_POINTER_
UP兩個(gè)事件。當(dāng)雙指接觸屏幕之后,MotionEvent中返回的x,y坐標(biāo)。getX(0),getY(0)返回第一指的屏幕坐標(biāo)。getX(1),getY(1)返回第二指的屏幕坐標(biāo)。通過spacing函數(shù)計(jì)算出兩指的動(dòng)態(tài)距離。然后與初始距離比較,所得的比值即為view需要縮放的倍數(shù)。
private float spacing(MotionEvent event) {
float x = event.getX(0) - event.getX(1);
float y = event.getY(0) - event.getY(1);
return (float) Math.sqrt(x * x + y * y);
}
2 實(shí)驗(yàn)檢測(cè)結(jié)果
實(shí)驗(yàn)共征集了30名受測(cè)者,包括10名老年人,10名成年人及10名兒童。在測(cè)試之前,我們對(duì)受測(cè)者進(jìn)行了調(diào)查,他們?nèi)繜o認(rèn)知障礙,擁有正常的肢體運(yùn)動(dòng)能力,通過得到到具體的測(cè)試數(shù)據(jù)分析得到如下結(jié)論:
(1)單擊任務(wù)和長按任務(wù)在各個(gè)年齡段都表現(xiàn)優(yōu)異。在所有任務(wù)中,成年組都較為穩(wěn)定,在雙擊和拖拽任務(wù)中老年組表現(xiàn)較差,兒童組在雙指旋轉(zhuǎn)任務(wù)和縮小任務(wù)中表現(xiàn)較差。
(2)男性有著較好的任務(wù)完成成功率,隨著任務(wù)變得困難,男女完成任務(wù)的成功率都逐漸降低,與女性相比,男性顯然有著比較好的適應(yīng)能力,女性在雙指旋轉(zhuǎn)的任務(wù)中成功率出現(xiàn)了顯著地降低。
(3)兒童組在整體上學(xué)習(xí)速度較快,隨著年齡的增長,速度逐漸變慢。對(duì)于完成度來說,最好的是成年組,老人組和兒童組相對(duì)較弱。
綜上,對(duì)老年人手勢(shì)選擇應(yīng)盡量簡單、易完成且應(yīng)用較多。成年人對(duì)手勢(shì)不敏感,兒童不要選擇過于精細(xì)的手勢(shì)。
【參考文獻(xiàn)】
[1]Hwayeong Kang, Gwanseob Shin. Effects of touch target location on performance and physical demands of computer touchscreen use[J]. Applied Ergonomics, 2017, 61.
[2]呂明,呂延.觸摸屏的技術(shù)現(xiàn)狀、發(fā)展趨勢(shì)及市場前景[J].機(jī)床電器.2012(03).
[3]陶達(dá),袁娟,劉雙,曲行達(dá),陳星宇.觸摸屏按鍵特征因素對(duì)鍵盤輸入操作可用性的影響[J].《人類工效學(xué)》,2016,22(5):1-6.