android 多手指触摸屏,AIR Android:关于多点触摸
處理用戶交互
目前,觸摸屏已經(jīng)成為移動設(shè)備的標配,Android設(shè)備也不例外。因此,對開發(fā)者來說,處理用戶交互在很大程度上也就是處理手與觸摸屏的交互。
由于手指很靈活,在一塊觸摸屏上可以產(chǎn)生多種多樣的操作方式。比如,單個手指就有按下、移動、快速單擊、長按等操作;兩個手指可以做旋轉(zhuǎn)、放縮手勢等,這些手勢引發(fā)的就是多點觸摸事件。如何在AIR中處理多點觸摸事件,正是本章要介紹的內(nèi)容。
關(guān)于多點觸摸
在ActionScript 3.0中按照交互行為產(chǎn)生的事件類型,將多點觸摸動作分為兩類:觸摸和手勢。
觸摸動作指一個或多個手指觸摸屏幕的動作,引發(fā)的事件對象為TouchEvent類型。手勢往往由一系列的觸摸動作組成,以代表某個特定意義,引發(fā)的事件對象為GestureEvent類型。
由于觸摸和手勢存在包含關(guān)系,在運行期間程序無法同時檢測這兩類事件,為此ActionScript 3.0引入了Multitouch類,用來管理程序的觸摸交互模式。如果要檢測觸摸事件,必須通過下面的代碼改變檢測方式:
//導入相應(yīng)的類
import?flash.ui.Multitouch;
import?flash.ui.MultitouchInputMode;
…
//檢測系統(tǒng)是否支持觸摸事件
if?(?Multitouch.supportsTouchEvents?)
{
//設(shè)置多點觸摸的模式為觸摸
Multitouch.inputMode=MultitouchInputMode.TOUCH_POINT;
}
在處理觸摸事件之前,建議開發(fā)者先檢測Multitouch 類的靜態(tài)屬性supportsTouchEvents 是否為true,即檢測當前設(shè)置是否支持觸摸事件,然后再進行后面的操作。如果設(shè)備不支持觸摸事件,可以用其他方式來處理交互,這樣就可以兼容多種設(shè)備。
intputMode是Multitouch類的另一個靜態(tài)屬性,表示當前程序的觸摸交互模式,有3個可選值,為MultitouchInputMode類的靜態(tài)常量:
MultitouchInputMode.NONE(不處理觸摸和手勢事件)
MultitouchInputMode.TOUCH_POINT(處理觸摸事件)
MultitouchInputMode.GESTURE(默認值,處理手勢事件)
在AIR中默認的交互模式為MultitouchInputMode.GESTURE,即處理手勢事件。因此,要使用觸摸事件時,必須將inputMode修改為MultitouchInputMode.TOUCH_POINT。
設(shè)置好交互模式后,就可以像處理其他事件一樣,對舞臺上的元件添加相應(yīng)的事件監(jiān)聽器來響應(yīng)用戶的操作。
提示 不管是在哪一種觸摸交互模式下,鼠標事件都可以正常使用。
【編輯推薦】
【責任編輯:閆佳明 TEL:(010)68476606】
點贊 0
總結(jié)
以上是生活随笔為你收集整理的android 多手指触摸屏,AIR Android:关于多点触摸的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 李彦宏:外界对百度文心一言的反馈跟我预期
- 下一篇: 华为史诗级软件替代:MetaERP直面西