Open In App

Android | Creating a SeekBar

Android SeekBar is a type of ProgressBar. On touching the thumb on seekbar and dragging it to the right or left, the current value of the progress changes. SeekBar is used for forwarding or backwarding the songs, Video etc. In the setOnSeekBarChangeListener interface is used which provides three methods.

  1. onProgressChanged: In this method progress is changed and then according to this change the progress value can used in our logic.
  2. onStartTrackingTouch: In this method when the user has started dragging, then this method will be called automatically.
  3. onStopTrackingTouch: In this method, when the user stops dragging, then this method will called automatically.

Below are the steps for Creating SeekBar Android Application:



The complete code of MainActivity.java or activity_main.xml of SeekBar is given below: 




<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
  
    <TextView
        android:id="@+id/message_id"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:text="geeksforgeeks"
        android:textStyle="bold"
        android:textSize="20sp"
        android:layout_gravity="center"/>
    <SeekBar
        android:id="@+id/seekbar"
        android:layout_marginTop="400dp"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:max="150"/>
  
</RelativeLayout>




package org.geeksforgeeks.navedmalik.seekbar;
  
// Import the libraries
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.SeekBar;
import android.widget.TextView;
  
public class MainActivity extends AppCompatActivity {
  
    // Define the global variable
    SeekBar seekbar;
    TextView Text_message;
  
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
  
        // Binding the layout to the file
        setContentView(R.layout.activity_main);
  
        // use findViewById() to get the Button
        Text_message
            = (TextView)findViewById(R.id.message_id);
        seekbar
            = (SeekBar)findViewById(R.id.seekbar);
  
        // Get the progress value of the SeekBar
        // using setOnSeekBarChangeListener() method
        seekbar
            .setOnSeekBarChangeListener(
                new SeekBar
                    .OnSeekBarChangeListener() {
  
                        // When the progress value has changed
                        @Override
                        public void onProgressChanged(
                            SeekBar seekBar,
                            int progress,
                            boolean fromUser)
                        {
  
                            // increment 1 in progress and
                            // increase the textsize
                            // with the value of progress
                            message.setTextSize(progress + 1);
                        }
  
                        @Override
                        public void onStartTrackingTouch(SeekBar seekBar)
                        {
  
                            // This method will automatically
                            // called when the user touches the SeekBar
                        }
  
                        @Override
                        public void onStopTrackingTouch(SeekBar seekBar)
                        {
  
                            // This method will automatically
                            // called when the user
                            // stops touching the SeekBar
                        }Progress
                    });
    }
}

Output:




Article Tags :