Подтвердить что ты не робот

Как программно запускать событие touch в android?

Я хотел бы вызвать событие касания следующим образом:

Сначала палец прикоснется к (0,50%) экрана и сдвинется к (50%, 50%) экрана и выйдет (переместите палец с экрана)

Я нашел что-то вроде этого:

MotionEvent event = MotionEvent.obtain(downTime, eventTime, action, x, y, pressure, size, metaState, xPrecision, yPrecision, deviceId, edgeFlags);

onTouchEvent(event);

Однако, как подражать вышеуказанному случаю? Мне нужно создать 2 события? onTouchDown, onMove и т.п....? Спасибо за помощь.

4b9b3361

Ответ 1

Возможный дубликат: Как имитировать сенсорное событие в Android?

// Obtain MotionEvent object
long downTime = SystemClock.uptimeMillis();
long eventTime = SystemClock.uptimeMillis() + 100;
float x = 0.0f;
float y = 0.0f;
// List of meta states found here:     developer.android.com/reference/android/view/KeyEvent.html#getMetaState()
int metaState = 0;
MotionEvent motionEvent = MotionEvent.obtain(
    downTime, 
    eventTime, 
    MotionEvent.ACTION_UP, 
    x, 
    y, 
    metaState
);

// Dispatch touch event to view
view.dispatchTouchEvent(motionEvent);