SeekBar is an extension of ProgressBar that adds a draggable thumb. The user can touch thumb and drag left or right to set the current progress level or various other task.
In this example, the seekbar will be used to display a percentage. As the user moves the SeekBar left to right the percentage value being displayed will change from 0 to 100.
User interaction is captured using the SeekBar.OnSeekBarChangeListener
The SeekBar.OnSeekBarChangeListener
has three methods :
onProgressChanged
– Notification that the progress level has changed.
onStartTrackingTouch
– Notification that the user has started a touch gesture.
onStopTrackingTouch
– Notification that the user has finished a touch gesture.
Step 1 :
Create a new Android Studio project
Step 2 :
In the XML file select the SeekBar from the Widgets palette. Also add a TextView, this will be used to display the percent.

Step 3 :
open up the java file and then define the SeekBar and TextView variable, use findViewById() to get the SeekBar and TextView.
Step 4 :
Use the SeekBar.OnSeekBarChangeListener
event and use the method OnProgressChanged
to capture the change in progress
Step 5 :
Run app, as the SeekBar is dragged from left to right the percentage should change in the TextView

Example Source Code
MainActivity .java
public class MainActivity extends AppCompatActivity {
NumberFormat percentFormat = NumberFormat.getPercentInstance();// percent format
TextView percentTextView; // Shows percent
double percent = 0; // setting initial percentage
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
percentTextView = (TextView) findViewById(R.id.percentTextView);
SeekBar percentSeekBar = (SeekBar) findViewById(R.id.percentSeekBar);
percentSeekBar.setOnSeekBarChangeListener(seekBarListener);
}
void calc() {
percentTextView.setText(percentFormat.format(percent));
}
final SeekBar.OnSeekBarChangeListener seekBarListener =
new SeekBar.OnSeekBarChangeListener() {
// update percent, then call calculate
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
percent = progress / 100.0;// set percent based on progress
calc();
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
};
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<SeekBar
android:id="@+id/percentSeekBar"
android:layout_width="186dp"
android:layout_height="24dp"
android:layout_marginStart="201dp"
android:layout_marginTop="357dp"
android:layout_marginEnd="169dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/percentTextView"
android:layout_width="79dp"
android:layout_height="29dp"
android:layout_marginStart="166dp"
android:layout_marginEnd="166dp"
android:layout_marginBottom="80dp"
android:text="TextView"
app:layout_constraintBottom_toTopOf="@+id/percentSeekBar"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Check Out Latest Tutorials Here!
Android Studio Loading Animation Between Activities
Progress Dialog is dialog showing a progress indicator and an optional text message or view. The methods of Progress Dialog being used in this tutorial are: ProgressDialog.setTitle() – Used to set title of dialog box ProgressDialog.setMessage() – Used to set dialog message being displayed ProgressDialog.setProgressStyle() – Choose the style of indicator ProgressDialog.dismiss() – Dismiss the…
Python Ethereum Block Chain Interaction with Web3
This tutorial will show how to interact with the Ethereum blockchain using Python. To start, the Python library Web3 will need to be installed. The Web3 library allows you to interact with a local or remote Ethereum node, using a HTTP or IPC connection. Using Web3 you will be able to create smart contracts on…
Python chr()
The chr() function returns a character that represents the specified unicode. Syntax chr(i) The chr() method takes only one integer as argument.The range may vary from 0 to 1,1141,111(0x10FFFF in base 16).The chr() method returns a character whose unicode point is num, an integer.If an integer is passed that is outside the range then the method returns…