Comment une vue peut-elle détecter quand elle est attachée à son parent?
J'ai Vue que les besoins de détecter quand il est attaché à sa vue parent.
Dans un ViewGroup
j'ai le OnHierarchyChangeListener
qui me permet de savoir quand un enfant vue est ajouté /enlevé, mais j'ai besoin de le contraire.
source d'informationauteur user940016
Vous devez vous connecter pour publier un commentaire.
Vous pouvez créer un affichage personnalisé et de faire vos trucs dans son onAttachedToWindow
[EDIT 1]
vous pouvez vous assurer que votre customview ajoutée pour corriger viewgroup qui vous voulez
Bien, vous avez la vue dans OnHierarchyChangeListener, donc je suppose que vous pourriez ajouter un rappel de votre point de vue (par sous-classement, avec une interface) et de l'appeler à partir d'OnHierarchyChangeListener. De cette façon, votre point de vue sera appelée en même temps que le OnHierarchyChangeListener est appelé.
Cependant, je ne serai pas surpris que, lorsque cela se produit, que de nombreuses propriétés de votre point de vue comme leurs dimensions peut-être pas encore définie.
Je pense que si vous avez besoin de ce type de contrôle, il peut être préférable d'en faire un fragment. De cette façon, vous obtenez l'accès à un beaucoup plus granulaire du cycle de vie.
Vous pouvez regarder ce problème sous un angle différent, si vous contrôlez les parents pour les attachés vues par la mise en œuvre de la méthode onViewAdded.
Exemple: