Ho this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
all'inizio di tutte le attività nella mia applicazione, quindi quando l'utente preme il volume su o giù, controlla il volume multimediale.setVolumeControlStream non funziona quando viene visualizzata una finestra popup
Ho una finestra popup nel mio programma e quando appare l'utente non può più controllare il volume.
Guardando domande simili, sembra che l'istituzione onKeyup/down
ascoltatori possono interferire con il processo - ma non ho impostare una up - i soli ascoltatori che ho per la finestra pop-up sono setOnClickListeners
per i pulsanti e un setOnDismissListener
per la finestra.
Come posso risolvere questo?
Purtroppo ho una finestra popup, non una finestra di dialogo, e né setOwnerActivity né setVolumeControlStream sembrano disponibili. – Mick
Quindi non sei fortunato, mi sono nascosto alla fonte AOSP di 'PopupWindow.java' e' Dialog.java' per come si poteva fare ma non ci riesce. 'PopupWindow' utilizza l'API privata di' WindowManager' per visualizzare la vista. Dovresti chiamare "setVolumeControlStream()" sulla 'Finestra', ma semplicemente non è usato. C'è qualche possibilità che tu possa passare ad una finestra basata su 'Dialog'? – Luminger
Ci proverò - ma non sono sicuro perché questa è la finestra più complicata che abbia mai realizzato. È altamente personalizzato, contiene animazioni e viene creato interamente a livello di programmazione. – Mick