J'utilise un Drawer identique commun à plusieurs pages. Lorsque l'utilisateur clique sur un bouton du Drawer (quelque soit la page), une routine de cette page l'envoie dans une Sub pour gérer la réponse. L'appel à cette routine contient le code Id de la page en cours et le Tag du bouton
Dans la Sub de la page "Utils", le programme réalise le process attendu mais je ne sais pas comment programmer la mise à jour d'une View de la page appelante. Pour le moment, il y a un code spécifique pour chaque page :
Ce n'est pas très "élégant" de programmer autant de retours que de pages appelantes.
La question est comment programmer un retour universel à partir du code ID de la page ?
Il faudrait programmer une page "universelle" et le compilateur n'accepte que les pages déclarées (Page1, Page2,.....)
B4X:
Sub ClicBoutonVolume_Click
Dim IdPage As String = B4XPages.GetManager.GetTopPage.Id
Utils.ClicBoutonsFin(IdPage,Sender)
B4X:
If IdPage = "video" Then ' Drawer Vidéo
Dim Page2 As Video
Page2 = B4XPages.GetPage("Video") ' Accès aux constantes
Page2.VideoDrawer.LeftOpen=False
If Page2.LastTab.IsInitialized Then ' Efface la ligne = "selected" du Tab
v = Page2.LastTab.GetView(3) ' Le panel inférieur (Tab Selected) est le 4éme
v.Color=Page2.TabsFondColor ' Remet la couleur de fond = "unselected"
End If
Else ' Drawer MP3
Dim Page1 As MusicMP3
La question est comment programmer un retour universel à partir du code ID de la page ?
Il faudrait programmer une page "universelle" et le compilateur n'accepte que les pages déclarées (Page1, Page2,.....)