您好我是Android的新手。 我有2个图像按钮。 1用于增加音量而另一个用于减少音量。 我有一个Seekbar来显示增加和减少的水平。 我想要一个Android代码增加以及减少系统量,它也应该反映Seekbar。任何人都可以帮助我
答案 0 :(得分:0)
audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
final SeekBar seekBar = (SeekBar) findViewById(R.id.seekBar);
Button increaseVolume = (Button) findViewById(R.id.button2);
Button decreaseVolume = (Button) findViewById(R.id.button3);
seekBar.setMax(audio.getStreamMaxVolume(AudioManager.STREAM_MUSIC));
seekBar.setProgress(audio.getStreamVolume(AudioManager.STREAM_MUSIC));
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser) {
audio.setStreamVolume(AudioManager.STREAM_MUSIC, progress, AudioManager.FLAG_SHOW_UI);
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
increaseVolume.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (seekBar.getProgress() < audio.getStreamMaxVolume(AudioManager.STREAM_MUSIC)) {
seekBar.setProgress(seekBar.getProgress() + 1);
audio.setStreamVolume(AudioManager.STREAM_MUSIC, seekBar.getProgress(), AudioManager.FLAG_SHOW_UI);
}
}
});
decreaseVolume.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (seekBar.getProgress() > 0) {
seekBar.setProgress(seekBar.getProgress() - 1);
audio.setStreamVolume(AudioManager.STREAM_MUSIC, seekBar.getProgress(), AudioManager.FLAG_SHOW_UI);
}
}
});