Android: comment créer un MotionEvent?

MotionEvent n'obtient pas de constructeur, je voulais créer manuellement un MotionEvent dans mon test d'unité, puis comment obtenir cela? Merci.

  • Comment créer un style AppCompat transparent?
  • OPENGL ES ne fonctionne pas: non Contexte actuel
  • Lancer une application sms avec une intention
  • Commandes personnalisées pour Google Now
  • Erreur lors de la création de MediaPlayer avec Uri ou fichier dans des actifs
  • Bouton Android setPressed après onClick
  • One Solution collect form web for “Android: comment créer un MotionEvent?”

    Vous devez utiliser l'une des méthodes d' MotionEvent statique de la classe MotionEvent pour créer un nouvel événement.

    La manière la plus simple (en plus d'enrouler un nouvel événement à partir d'un existant) est:

     static public MotionEvent obtain(long downTime, long eventTime, int action, float x, float y, int metaState) { 

    Documents API :

    Créez un nouveau MotionEvent, en remplissant un sous-ensemble des valeurs de mouvement de base. Ceux qui ne sont pas spécifiés ici sont: ID de l'appareil (toujours 0), pression et taille (toujours 1), précision x et y (toujours 1) et bordure (toujours 0).

    Paramètres :

    • downTime L'heure (en ms) lorsque l'utilisateur a été pressé à l'origine pour démarrer un flux d'événements de position. Cela doit être obtenu à partir de SystemClock.uptimeMillis ().
    • eventTime Le temps (en ms) lorsque cet événement spécifique a été généré. Cela doit être obtenu à partir de SystemClock.uptimeMillis() .
    • action Le type d'action en cours – l'une des ACTION_DOWN , ACTION_MOVE , ACTION_UP ou ACTION_CANCEL .
    • x La coordonnée X de cet événement.
    • y La coordonnée Y de cet événement.
    • metaState L'état de n'importe quelle touche méta / modificateur qui était en vigueur lors de l'événement a été généré.

    Lien vers les documents de l'API

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.