onKeyDown не работает - PullRequest
       5

onKeyDown не работает

0 голосов
/ 12 августа 2011

Я пишу код для изменения TextView, когда нажимается клавиша увеличения / уменьшения громкости для обновления TextView установленного объема системы%. Теперь у меня есть этот код, который работает один раз, но он переопределяет функциональность вверх / вниз Есть ли способ переписать его или исключить из списка?

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_VOLUME_UP || keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {


            //system volume
            int curVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
            int i = curVolume;  
            String aString = Integer.toString(i);   

            TextView sysVol = (TextView)findViewById(R.id.systemVolume);
            sysVol.setText(aString);
            sysVol.invalidate();

            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

}

Ответы [ 2 ]

1 голос
/ 12 августа 2011

Не возвращайте true в своем коде, но используйте вместо него

return super.onKeyDown(keyCode, event);

, как в других веткахВозвращение true означает, что событие было обработано правильно, и никаких дальнейших действий предприниматься не будет.Возвращение false означает, что событие еще предстоит обработать.

0 голосов
/ 12 августа 2011

Onkeydown не распространяется на просмотр текста.Вместо этого присоедините его к своей деятельности и нацелите текстовое представление от этого

...