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

Программно запускает событие Touch в android

Можем ли мы выполнить косвенное событие программно в android каким-то способом, например, передать координаты экрана (x, y)? Есть ли такой метод? Пожалуйста, направляйте меня.

4b9b3361

Ответ 1

Я не уверен, что он работает, но попробуйте следующее:

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

Ответ 2

Вы можете позвонить

View.onTouchEvent (MotionEvent)

когда вы знаете пункт назначения

Если вы хотите обратиться к ребенку или внуку,

View.dispatchTouchEvent (MotionEvent)

лучше

Однако вы должны предоставить самопроизвольное событие движения. MotionEvent также содержит координаты.

Ответ 3

Вы можете попробовать использовать dispatchTouchEvent и дать ему экземпляр MotionEvent, как показано ниже

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

вы можете найти дополнительную помощь в этой ссылке

http://developer.android.com/reference/android/app/Activity.html#dispatchTouchEvent%28android.view.MotionEvent%29

Ответ 4

Для этого существует специальный метод:

View.performClick()