Tengo this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
al comienzo de todas las actividades en mi aplicación, así que cuando el usuario presiona los botones de subir o bajar el volumen, él controla el volumen de medios.setVolumeControlStream no funciona cuando se muestra una ventana emergente
Tengo una ventana emergente en mi programa y cuando eso aparece el usuario ya no puede controlar el volumen.
En cuanto a las preguntas similares, parece que la creación de onKeyup/down
oyentes puede interferir con el proceso - pero no se ha definido ninguna arriba - los únicos oyentes que tengo acerca de la ventana emergente son setOnClickListeners
para los botones y una setOnDismissListener
de la ventana.
¿Cómo puedo solucionar esto?
Tristemente tengo una ventana emergente, no un cuadro de diálogo, y ni setOwnerActivity ni setVolumeControlStream parecen estar disponibles. – Mick
Entonces estás de suerte, aceché a través de la fuente AOSP de 'PopupWindow.java' y' Dialog.java' a la forma en que podría hacerse, pero simplemente no puede. El 'PopupWindow' hace uso de la API privada de' WindowManager' para mostrar la vista. Debería llamar a 'setVolumeControlStream()' en la 'Ventana', pero simplemente no se usa. ¿Hay alguna posibilidad de que pueda cambiar a una ventana basada en 'Dialog'? – Luminger
Lo investigaré, pero no estoy seguro porque esta es la ventana más complicada que he hecho. Es altamente personalizado, contiene animaciones y se crea totalmente programáticamente. – Mick