Auditeur d'événements personnalisé Android

Dis-moi que je veux faire mon propre auditeur d'événement pour ma classe, comment puis-je faire cela? Dois-je maintenir un thread manuellement?

  • Comment envoyer un courrier électronique avec un lien pour ouvrir l'application Android
  • Comment créer une action vocale personnalisée pour mon application?
  • Création d'applications Android sans Java
  • Sélecteur de date Android avec seulement Jour et Mois
  • Comment afficher un nouveau Fragment dans un seul onglet?
  • Obtenir un objet JSON imbriqué avec GSON en utilisant la modernisation
  • Récupérer l'événement clé sur EditText
  • Set onClickListener pour l'élément spinner?
  • OnKeyListener ne fonctionne pas avec le clavier logiciel (Android)
  • Android AudioRecord vs. MediaRecorder pour l'enregistrement audio
  • AudioRecord enregistre le son intermittent dans Android L Aperçu du développeur
  • Android: écoute de changements variables
  • 2 Solutions collect form web for “Auditeur d'événements personnalisé Android”

    public class CustomView extends View(){ OnCustomEventListener mListener; : ://some code : : 

    Créez une interface qui sera implémentée par votre activité:

     public interface OnCustomEventListener { void onEvent(); } public void setCustomEventListener(OnCustomEventListener eventListener) { mListener = eventListener; } 

    Maintenant, vous devez savoir quand l'événement se produit réellement. Par exemple, lorsque l'utilisateur touche un point sur l'écran, annulez la méthode OnTouchEvent:

     onTouchEvent(MotionEvent ev) { if (ev.getAction==MotionEvent.ACTION_DOWN) { if(mListener!=null) mListener.onEvent(); } } 

    De même, vous pouvez créer un événement spécifique que vous souhaitez. (Les exemples peuvent être touchés, attendez exactement 2 secondes et relâchez, vous devriez faire une logique à l'intérieur d'un événement tactile).

    Dans votre activité, vous pouvez utiliser l'objet customView pour définir un événementListener en tant que tel:

      customView.setCustomEventListener(new OnCustomEventListener() { public void onEvent() { //do whatever you want to do when the event is performed. } }); 

    Cela peut se faire de la manière suivante

    Créez d'abord une classe d'interface:

     public interface OnStopTrackEventListener { public void onStopTrack(); } 

    Ensuite, créez la classe qui contrôle l'interface:

     public class Player { private OnStopTrackEventListener mOnStopTrackEventListener; public void setOnStopTrackEventListener(OnStopTrackEventListener eventListener) { mOnStopTrackEventListener = eventListener; } public void stop() { if(mOnStopTrackEventListener != null) { mOnStopTrackEventListener.onStopTrack(); } } } 

    C'est tout. Utilisons-le maintenant

     Player player = new Player(); player.stop(); //We are stopping music player.setOnStopTrackEventListener(new OnStopTrackEventListener() { @Override public void onStopTrack() { //Code to work when music stops } }); 
    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.