Hello Friends,
Today i am going to post Custom Volume bar using seek bar in android. With this functionality we can set volume of any sound and video.
Today i am going to post Custom Volume bar using seek bar in android. With this functionality we can set volume of any sound and video.
import android.app.Activity;
import android.content.Context;
import
android.media.AudioManager;
import android.os.Bundle;
import android.view.KeyEvent;
import
android.widget.SeekBar;
import
android.widget.SeekBar.OnSeekBarChangeListener;
public class VolumeActivity
extends Activity
{
//a variable to
store the seek bar from the XML file
private SeekBar volumeBar;
//an AudioManager
object, to change the volume settings
private AudioManager amanager;
/** Called when the
activity is first created. */
@Override
public void onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//get the seek bar
from main.xml file
volumeBar = (SeekBar)
findViewById(R.id.sb_volumebar);
//get the audio
manager
amanager = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
volumeBar.setMax(amanager.getStreamMaxVolume(AudioManager.STREAM_MUSIC));
//set the seek bar
progress to 1
volumeBar.setKeyProgressIncrement(1);
//sets the progress
of the seek bar based on the system's volume volumeBar.setProgress(amanager.getStreamVolume(AudioManager.STREAM_MUSIC));
//register
OnSeekBarChangeListener, so that the seek bar can change the volume
volumeBar.setOnSeekBarChangeListener(new
OnSeekBarChangeListener()
{
@Override
public void
onStopTrackingTouch(SeekBar seekBar)
{}
@Override
public void
onStartTrackingTouch(SeekBar seekBar)
{}
@Override
public void
onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)
{
//change the
volume, displaying a toast message containing the current volume and playing
a feedback sound
amanager.setStreamVolume(AudioManager.STREAM_MUSIC,progress, 0);
}
});
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent
event)
{
//if one of the
volume keys were pressed
if(keyCode == KeyEvent.KEYCODE_VOLUME_DOWN || keyCode == KeyEvent.KEYCODE_VOLUME_UP)
{
//change the seek
bar progress indicator position volumeBar.setProgress(amanager.getStreamVolume(AudioManager.STREAM_MUSIC));
}
//propagate the key
event
return super.onKeyDown(keyCode,
event);
}
}
I
will be happy if you will provide your feedback or follow this blog. Any suggestion
and help will be appreciated.
Thank
you :)