8

音量変更バー/通知を非表示にする方法はありますか?

音量変更のスクリーンショット ネクサス

上にスクリーンショットを添付しました。このバーは、音量を変更するたびに表示されます (少なくとも私の nexus テスト デバイスでは)。それともネクサススペシャルですか?

4

2 に答える 2

19

これは、音量アップ/ダウン ボタンを押すと表示されるデフォルトのポスト ハニカム ボリューム スライダーです。システムのすべての画面で非表示にすることはできませんが、アクティビティで非表示にすることはできます。非表示にしたいアクティビティにこれを追加し、音量を手動で変更します。または、音量を変更したくない場合は、 KeyEvent.KEYCODE_VOLUME_UP / DOWN の場合は何もできません。どのメナンがイベントを消費したか true を返すことを忘れないでください。そこに false を返すと、コードの後に​​デフォルトのボリューム動作がトリガーされるときに二重の効果が得られます。

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    switch (event.getKeyCode()) {
        case KeyEvent.KEYCODE_VOLUME_UP:
            manager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                    AudioManager.ADJUST_RAISE,
                    AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
            return true;
        case KeyEvent.KEYCODE_VOLUME_DOWN:
            manager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                    AudioManager.ADJUST_LOWER,
                    AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
            return true;

        default:
            return super.onKeyDown(keyCode, event);
    }
}

AudioManager マネージャーが取得される場所

manager = (AudioManager) context
            .getSystemService(Context.AUDIO_SERVICE);
于 2013-01-28T13:41:54.603 に答える