Potrzebuję kliknięcia przycisku intencji ACTION_SEND. Tutaj nie ma potrzeby wyświetlania interfejsu użytkownika. Czy mogę uzyskać kliknięcie przycisku „Wyślij” w usłudze MMS-SMSProvider w systemie Android?
Odpowiedzi:
Możesz kliknąć przycisk programowo, używając button.performClick()
metody.
Jeśli twój przycisk zawiera jakąkolwiek animację, musisz wykonać kliknięcie, a następnie unieważnić każdy krok po wykonaniu kliknięcia. Oto jak:
button.performClick();
button.setPressed(true);
button.invalidate();
button.setPressed(false);
button.invalidate();
Czasami musiałem też wprowadzić opóźnienie, aby animacja się pokazała. Lubię to:
//initiate the button
button.performClick();
button.setPressed(true);
button.invalidate();
// delay completion till animation completes
button.postDelayed(new Runnable() { //delay button
public void run() {
button.setPressed(false);
button.invalidate();
//any other associated action
}
}, 800); // .8secs delay time
button.callOnClick();
ten też może być użyty