Android Studio-Touch模拟『單擊』『雙擊』

Android Studio-Touch模拟『單擊』『雙擊』
Android Studio-Touch模拟『單擊』『雙擊』

Android触摸Touch 手指触摸荧屏傳遞『鬆UP』『撳DOWN』『拖DRAGGED』基礎信息, 要模拟『單擊』『雙擊』, 首先定義信息指令.

#define TOUCH_CLICK          4 單擊
#define TOUCH_DOUBLECLICK   5 雙擊

定義『單擊』『雙擊』時間間隔. 约摸0.1秒即触發單擊,

#define TOUCH_TIME_CLICK  0.5f 單擊 500毫秒
#define TOUCH_TIME_DOUBLECLICK  0.5f 雙擊 500毫秒

定義冚域變量,記录『撳up』『單擊click』触發時間.

double touch_time_down; 撳-进程時鐘
double touch_time_click; 單擊-进程時鐘

获得進程時鐘信号

clock_t clock(void);  

每秒時鐘計時单位

#define CLOCKS_PER_SEC 1000000 時鐘单位

計進程時間,單位『秒』

『進程時間=時鐘信号/时鐘单位』

double currTime = clock() / CLOCKS_PER_SEC ;

當接收『鬆UP』指令.

if(action == TOUCH_UP){//鬆

判斷两次單擊小於0.5秒触發雙擊

if((currTime – touch_time_click) < TOUCH_TIME_DOUBLECLICK )  {
touch->action[finger] = TOUCH_DOUBLECLICK; //細過500ms 雙擊
        touch_time_click = currTime;   }

判斷『鬆UP』『撳DOWN』小於0.5秒触發單擊

else if((currTime – touch_time_down) < TOUCH_TIME_CLICK ) {// 細過500ms
       touch->action[finger] = TOUCH_CLICK; //單擊
         touch_time_click = currTime;        }}

記录『撳DOWN』

    if(action == TOUCH_DOWN)
touch_time_down = currTime;//撳-进程時間

 

發表評論