J'ai créé des contrôles d'interface utilisateur étendus basés sur les widgets android par défaut (Button, ProgressBar). À un certain point, dans le contrôle personnalisé, je veux communiquer avec la vue qui contient le contrôle personnalisé. Par exemple, je veux passer la valeur actuelle du ProgressBar ou une valeur du bouton. Quelle est la meilleure approche? Est-il possible de créer un événement personnalisé (comme le "onClick") et ensuite avoir dans la classe conteneur un gestionnaire? Ou il y a une meilleure approche? Merci d'avance! ;)Communication entre une vue personnalisée intégrée dans une vue
0
A
Répondre
0
Si le "un point" est lorsqu'un événement se produit (comme lorsque vous appuyez sur le bouton), vous pouvez créer une interface d'écouteur d'événements.
l'intérieur d'une vue personnalisée de la mienne je mets ceci:
private OnFlingListener flingListener;
// my event listener interface
public interface OnFlingListener {
public abstract boolean onFling(View v, int direction);
}
public void setOnFlingListener(OnFlingListener l) {
flingListener = l;
}
// ........my custom view code.......
// event handling now
private void flingRight() {
if(flingListener != null) {
if(flingListener.onFling(this, FLING_TO_RIGHT))
showPrevious();
} else {
showPrevious();
}
}
cette façon, je peux mettre en œuvre OnFlingListener
comme je le ferais avec OnClickListener
.
EDIT:
mes onFling
retourne un booléen parce que je voulais décider là-dedans si d'accepter ou d'annuler l'événement (voir flingRight()
). Il pourrait également retourner le vide.
Questions connexes
- 1. Communication intercomposant dans une vue (MVC)
- 2. Comment ajouter une vue personnalisée sur une vue dans Android?
- 3. erreurs créant vue pour une vue personnalisée
- 4. Communication entre une vue Eclipse personnalisée et un programme en cours d'exécution?
- 5. Comment concevoir une vue personnalisée
- 6. comment placer une vue personnalisée dans une vue de liste personnalisée pour le fragment de liste
- 7. Passer une liste à une vue personnalisée?
- 8. Comment ajouter une vue personnalisée dans UIAlertView
- 9. Animer un dessin dans une vue personnalisée
- 10. Spinner dans une vue ActionBar personnalisée
- 11. Comment afficher une vue personnalisée dans UIActionSheet?
- 12. Obtention du contexte dans une vue personnalisée?
- 13. Ajout d'edittext dans une vue personnalisée
- 14. Communication directe entre modèle et vue dans l'application asp.net mvc
- 15. Remplacer la sous-vue de NSSplitview par une vue personnalisée
- 16. Spring MVC AJAX et JSON en utilisant une vue personnalisée résolveur et une vue personnalisée
- 17. Communication entre la vue et le modèle dans MVC
- 18. Comment définir une vue personnalisée pour UIBarButtonItem?
- 19. Ajouter une action à UIButton qui dans une vue personnalisée
- 20. Django: Obtenir une sortie de tag personnalisée dans une vue
- 21. Comment rafraîchir une vue personnalisée dans une mise en page
- 22. Comment obtenir une vue de titre personnalisée?
- 23. Créer une vue personnalisée et appelez-programatically
- 24. onDraw() conception efficace pour une vue personnalisée
- 25. Récupérer une vue personnalisée et son contenu
- 26. Passer à une autre vue personnalisée
- 27. Dessiner seulement une partie d'une vue personnalisée
- 28. Forme de puzzle pour une vue personnalisée
- 29. Une classe personnalisée simple étend la vue
- 30. Ajouter UISwipeGestureRecognition à une vue personnalisée ios
Vous pouvez utiliser 'View.getParent()' - il obtient le parent de cette vue, puis l'appelle smth. Cependant, la question semble un peu étrange pour moi .. –