webentwicklung-frage-antwort-db.com.de

Kann ich für eine vordefinierte Absicht programmgesteuert auf eine Schaltfläche klicken?

Ich brauche den Button Klick der Absicht ACTION_SEND. Hier muss keine Benutzeroberfläche angezeigt werden. Kann ich den "Senden" -Button vom MMS-SMSProvider in Android bekommen?

93
info

Sie können programmgesteuert mithilfe der button.performClick() -Methode auf eine Schaltfläche klicken.

228
Nirav Bhandari

Wenn Ihre Schaltfläche eine Animation enthält, müssen Sie den Klick ausführen und dann jeden Schritt nach performClick ungültig machen. Hier ist wie:

 button.performClick();
 button.setPressed(true); 
 button.invalidate(); 
 button.setPressed(false); 
 button.invalidate(); 

Gelegentlich musste ich auch eine Verzögerung einführen, damit die Animation angezeigt wird. So was:

 //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
41
PeteH
button.callOnClick();

dieser kann auch verwendet werden

2
Flash