Android Dev, Funcionalidade do volume na Activity

Estou com um problema, fiz um aplicativo que está usando os botões de volume como contador, os botões estão fazendo a contagem direitinho, porem ao mesmo tempo que fazem a contagem estão aumentando e diminuindo o volume, alguem sabe o codigo para desabilitar o controle de voluma na Activity???

posta o código…

Em geral após capturar o botão é preciso fazer sair do método retornando true.

[code]Override
public boolean dispatchKeyEvent(KeyEvent event) {
int action = event.getAction();
int keyCode = event.getKeyCode();
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
if (action == KeyEvent.ACTION_UP) {

        }
        return true;
    case KeyEvent.KEYCODE_VOLUME_DOWN:
        if (action == KeyEvent.ACTION_DOWN) {

        }
        return true;
    default:
        return super.dispatchKeyEvent(event);
    }
}[/code]

A idéia dos booleans quando se está tratando eventos é que se você retornou true significa que voce “lidou” com ele, e quem despachou pode ter certeza que alguem fez algo com o evento, mas as vezes o parent ignora esse valor e executa seu codigo mesmo assim.

Este é o codigo para os botões de volume

[code]/Função dos Botões de Volume
@Override

public boolean dispatchKeyEvent(KeyEvent event) {


    int action = event.getAction();

    int keyCode = event.getKeyCode();

    super.dispatchKeyEvent(event);

        switch (keyCode) {

        case KeyEvent.KEYCODE_VOLUME_UP:

       

            if (action == KeyEvent.ACTION_DOWN ) {

            	contador++;                                
                mostra.setText("Contador: " + contador);

            }

            return super.dispatchKeyEvent(event);

        case KeyEvent.KEYCODE_VOLUME_DOWN:

            if (action == KeyEvent.ACTION_DOWN) {

            	contador--;                                
                mostra.setText("Contador: " + contador);

            }

            return super.dispatchKeyEvent(event);

        default:

            return super.dispatchKeyEvent(event);
        }}



@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}
[/code]

os botões de funçao de fazer contagem positiva e negativa, ele está fazendo está contagem mas ao mesmo tempo está aumentando e diminuindo o volume, oque pode resolver???

Olá
Nos dois primeiros case´s não usa “return super.dispatchKeyEvent(event);” usa “return true;” como foi indicado pelo colega fabriciov.
No default, não chama o super, usa “return false;”

Obrigado pelo ajuda pessoal, funcionou direitinho :smiley: