Android - Classe étendant RelativeLayout (onResume)
-
13-12-2019 - |
Question
J'ai cette classe : public class HeaderView extends RelativeLayout implements OnClickListener, ProgressBarListener
Dans chaque activité, ce HeaderView est affiché tel que je l'ai mis dans la mise en page XML.Maintenant, le fait est que je veux pouvoir implémenter onResume dans mon HeaderView.Lorsque je lance une activité, onCreate est appelé et HeaderView dessine les éléments dont j'ai besoin en haut, mais si j'appuie en arrière, mon activité appellera onResume et mon HeaderView ne sera pas recréé et les anciennes valeurs seront toujours là.Comment puis-je implémenter onResume dans mon HeaderView ou quelque chose de similaire afin de recréer le HeaderView !?
Merci d'avance!
La solution
vous ne pouvez pas appeler onResume dans la classe HeaderView car il s'agit de la méthode de rappel de la classe Activity et des classes étendant la classe Activity.
Ainsi, dans le onResume de votre classe Activity, appelez une méthode de la classe HeaderView quelque chose comme refreshView()
, puis votre vue peut être actualisée.
Section modifiée :
Vous pouvez faire un BaseScreen
extension de classe Activity
et implémenter cette chose dans son onResume
.
Maintenant, étendez ce cours à toutes vos activités au lieu de le Activity
classe.
Cela fera courir refreshView()
chaque fois que onResume est appelé, vous n'avez plus besoin de le définir dans chaque classe d'activité de votre code.