Как отключить громкость в приложении
Я тестирую с событиями громкости "вверх / вниз", и все работает нормально, но у меня есть вопрос.
Когда я нажимаю кнопку увеличения громкости, мой код работает правильно, но когда я нажимаю кнопку уменьшения громкости, это то, что я вижу на своем экране:
http://i.imgur.com/oThipej.jpg
Как мне отключить это?
Мой код:
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.KeyEvent;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private Button pregunta;
private TextView respuesta;
int sino = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
pregunta = (Button)findViewById(R.id.pregunta);
respuesta = (TextView)findViewById(R.id.respuesta);
}
public void responde(View v){
if(sino == 1){
respuesta.setText("La respuesta es sí.");
}else if (sino == 2){
respuesta.setText("La respuesta es no");
}else{
respuesta.setText("Ummmm, no lo veo claro...");
}
sino = 0;
}
@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_DOWN) {
sino = 1;
}
return true;
case KeyEvent.KEYCODE_VOLUME_DOWN:
if (action == KeyEvent.ACTION_DOWN) {
sino = 2;
}
return false;
default:
return super.dispatchKeyEvent(event);
}
}
1 ответ
Вы должны заменить "вернуть ложь";"вернуть истину";
@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_DOWN) {
sino = 1;
}
return true;
case KeyEvent.KEYCODE_VOLUME_DOWN:
if (action == KeyEvent.ACTION_DOWN) {
sino = 2;
}
return true;
default:
return super.dispatchKeyEvent(event);
}
}