Tôi có this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
khi bắt đầu tất cả hoạt động trong ứng dụng của mình để khi người dùng nhấn nút tăng hoặc giảm âm lượng, anh điều khiển âm lượng phương tiện.setVolumeControlStream không hoạt động khi cửa sổ bật lên được hiển thị
Tôi có cửa sổ bật lên trong chương trình của mình và khi xuất hiện người dùng không thể kiểm soát âm lượng nữa.
Nhìn vào câu hỏi tương tự có vẻ như rằng việc thiết lập onKeyup/down
người nghe có thể can thiệp vào quá trình này - nhưng tôi đã không đặt bất kỳ lên - thính giả duy nhất tôi có cho cửa sổ popup đã bị setOnClickListeners
cho các nút và một setOnDismissListener
cho cửa sổ.
Làm cách nào để khắc phục sự cố này?
Đáng buồn là tôi có PopupWindow, không phải Hộp thoại và cả setOwnerActivity lẫn setVolumeControlStream đều không có sẵn. – Mick
Sau đó, bạn đã hết may mắn, tôi đã lurked thông qua nguồn AOSP của 'PopupWindow.java' và' Dialog.java' để làm thế nào nó có thể được thực hiện nhưng nó chỉ có thể không. 'PopupWindow' sử dụng API riêng của' WindowManager' để hiển thị khung nhìn. Bạn sẽ cần phải gọi 'setVolumeControlStream()' trên 'Window' nhưng nó không được sử dụng. Có cơ hội nào bạn có thể thay đổi thành cửa sổ 'Dialog' không? – Luminger
Tôi sẽ xem xét nó - nhưng tôi không tự tin vì đây là cửa sổ phức tạp nhất mà tôi từng thực hiện. Tùy biến cao của nó, chứa các hình động và được tạo ra hoàn toàn theo chương trình. – Mick