Highly customized vertical Seekbar with segments

Overview

SegmentedVerticalSeekBar

It is an Android Vertical Seekbar with segments developed in Kotlin. It offers multiple customization attributes to create a Slider/Seekbar based on your requirements.

Demo

First Second Third Forth

Setup

Add the Maven Central repository to your project's root build.gradle file

allprojects {
    repositories {
        mavenCentral()
    }
}

Add the dependency in your app build.gradle file:

implementation 'io.github.smartsensesolutions:SegmentedVerticalSeekBar:1.0.1'

Usage

Sample implementation here

Use the view in your layout.xml by declaring:

	<com.ss.svs.SegmentedVerticalSeekBar
            android:id="@+id/svsLevelView"
            android:layout_width="150dp"
            android:layout_height="200dp"
            android:layout_gravity="center"
            android:layout_marginTop="100dp"
            app:backgroundColor="@color/color_background"
            app:clockwise="true"
            app:cornerRadius="10dp"
            app:currentValue="2"
            app:delimiterColor="@color/white"
            app:isAllRadius="true"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            app:maxValue="5"
            app:progressColor="@color/color_progress"
            app:pyramidViewEnable="true"
            app:step="1"
            app:touchDisabled="false" />

Use setOnBoxedPointsChangeListener in your activity/fragment to get current progress of seekbar:

svsLevelView.setOnBoxedPointsChangeListener(object :
            com.ss.svs.SegmentedVerticalSeekBar.OnValuesChangeListener {
            override fun onProgressChanged(segmentedPointsSeekBar: com.ss.svs.SegmentedVerticalSeekBar?, progress: Int) {
                activityMainBinding.tvCurrentValue.text = progress.toString()
            }
 
            override fun onStartTrackingTouch(segmentedPointsSeekBar: com.ss.svs.SegmentedVerticalSeekBar?) {
                Log.e("MainAct","onStartTrackingTouch: "+segmentedPointsSeekBar?.value)
 
            }
 
            override fun onStopTrackingTouch(segmentedPointsSeekBar: com.ss.svs.SegmentedVerticalSeekBar?) {
                Log.e("MainAct","onStopTrackingTouch: "+segmentedPointsSeekBar?.value)
                activityMainBinding.svsLevelView.value = segmentedPointsSeekBar?.value!!
            }
 
        })

Attributes

Following are the various attributes available to customize the look and feel of the Seekbar.

maxValue: Maximum value of segments to be drawn for the Seekbar View.

currentValue: Current value of the Progress in Seekbar. It can be used to set the default current progress in the seekbar and using this attributes getter, the updated progress value can be captured

cornerRadius: Radius property for curving the borders of Seekbar

step: Incremental value for progress on user’s drag. For example, if set to “2” it will increase 2 steps of progress in the Seekbar.

delimiterColor: Color of the separator dividing the Seekbar into segments.

progressColor: Color of the progress in Seekbar.

backgroundColor: Color of the base view of Seekbar.

pyramidViewEnable: Boolean value if set to true will create Seekbar in the shape of the pyramid. Setting it to false will create a rectangular Seekbar which is the default case.

clockwise: Boolean applicable if pyramid view is enabled. Setting it to true will create a pyramid seekbar from top to bottom while setting it to false will create it from bottom to top.

isAllRadius: Boolean value to set the radius for all segments of the Seekbar, that is rounded views for all segments.

touchDisabled: Boolean value to allow the progress of Seekbar only using scroll motion and not the touch/press event.

enabled: Boolean to enable/disable the Seekbar view completely.

iOS Library

Check our iOS Library also SSVerticalSegmentsSlider

License

Copyright 2021 SmartSense Solutions
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
   http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the License.
You might also like...
how to handle recyclerView in Kotlin to display grid , vertical , horizontal layouts

Dogglers - Starter Code Starter code for the second independent project for Android Basics in Kotlin. Introduction This is the starter code for the Do

Android Compose wheel picker library based on LazyColumn in vertical and LazyRow in horizontal.

About Android Compose wheel picker library based on LazyColumn in vertical and LazyRow in horizontal. Gradle Sample Default Item size Unfocused count

🚀📒📍 Indicators for Horizontal or Vertical Pager with different orientation, color, size options and optional touch feature.

Compose Pager Indicator Indicators for Horizontal or Vertical pager with different orientation, color, size options and optional touch feature. indica

This is an Image slider with swipes, Here we used Volley to Image load URL's from JSON! Here we make it very easy way to load images from Internet and We customized the description font style(OpenSans).

ImageSliderWithSwipes This is an Image slider with swipes, Here we used Volley to load URL's from JSON! Here we make it very easy way to load images f

A customized video view that will automatically pause video is user is not looking at device screen!!!!!

UserAwareVideoView Featured in: Medium What is this library for? UserAwareVideoView is a customizable VideoView that smartly play and pause the video

A circular android ProgressBar library which extends View,  and the usage same as ProgressBar,  It has solid,line and solid_line three styles. Besides, progress value can be freely customized.
A circular android ProgressBar library which extends View, and the usage same as ProgressBar, It has solid,line and solid_line three styles. Besides, progress value can be freely customized.

CircleProgressBar 中文版文档 The CircleProgressBar extends View, It has both solid and line two styles. Besides, progress value can be freely customized. I

Arc pointer - simple customized progress bar in the form of an arch
Arc pointer - simple customized progress bar in the form of an arch

ArcPointer Simple customized progress bar in the form of an arch Demo Quick start Step 1 Gradle: compile 'io.github.dvegasa:arcpointer:1.0.2' Maven:

This library allows to use customized Rating Dialog inside applications.
This library allows to use customized Rating Dialog inside applications.

Android Material App Rating This library allows to use customized Rating Dialog inside applications. Download compile 'com.stepstone.apprating:app-rat

Customized and RoundedEditText
Customized and RoundedEditText

CustomEditText A Collection of features are wrapped into single UI element. By adding a line code in xml, able to access these features,rectangular vi

Customized and Expandable TextView
Customized and Expandable TextView

Customized and Expandable TextView Simple library to change the Textview as rectangle, circle and square shapes by adding one line of code in xml file

An android library through which users can add a customized loading dialog box with Lottie Animations.
An android library through which users can add a customized loading dialog box with Lottie Animations.

CustomLottieDialogBox About CustomLottieDialogBox is an android library which facilitate developers to add customized loading Dialog-Boxes to their an

A SeekBar suited for showing a preview of something. As seen in Google Play Movies.
A SeekBar suited for showing a preview of something. As seen in Google Play Movies.

PreviewSeekBar A SeekBar suited for showing a video preview. As seen in Google Play Movies Google Play Movies PreviewSeekBar's sample Build Add the fo

 A beautiful and powerful SeekBar what supports single、 range、steps、vetical、custom( 一款美观强大的支持单向、双向范围选择、分步、垂直、高度自定义的SeekBar)
 A beautiful and powerful SeekBar what supports single、 range、steps、vetical、custom( 一款美观强大的支持单向、双向范围选择、分步、垂直、高度自定义的SeekBar)

文档还是中文好 Demo APK download fir.im Usage Dependencies Release Version allprojects { repositories { ... maven { url 'https://jitpack.io' }

Circular SeekBar view for Android
Circular SeekBar view for Android

SeekArc What is a SeekArc? So what the heck is a SeekArc? Essentially it’s a SeekBar that has been wrapped around a circle. It acts like a SeekBar and

Custom circular SeekBar (Circle, Semi-circle, and Ellipse) View/Widget for Android
Custom circular SeekBar (Circle, Semi-circle, and Ellipse) View/Widget for Android

CircularSeekBar Android CircularSeekBar Custom View/Widget This is a custom circular SeekBar. It can be used to create SeekBars that are: -Full Circle

A seekbar contains two cursor(left and right). Multiple touch supported.
A seekbar contains two cursor(left and right). Multiple touch supported.

RangeSeekbar A seekbar contains two cursor and support multi-touch. RangeSeekbar have left and right cursors, user can move cursor to make fliter. How

Android circle seekbar widget inspired from: https://github.com/LarsWerkman/HoloColorPicker
Android circle seekbar widget inspired from: https://github.com/LarsWerkman/HoloColorPicker

Android HoloCircleSeekBar A Circle SeekBar inspired by Android Holo ColorPicker designed by Marie Schweiz and developed by Lars Werkman. How to integr

A colorful SeekBar for picking color
A colorful SeekBar for picking color

ScreenShot: Attrs attr format default colorSeeds references colorBarPosition integer 0 alphaBarPosition integer 0 maxPosition integer 100 bgColor colo

StartPointSeekBar is a custom view for the Android platform that makes it possible to have a SeekBar to have custom start point.
StartPointSeekBar is a custom view for the Android platform that makes it possible to have a SeekBar to have custom start point.

Forked/Inspired from https://code.google.com/p/range-seek-bar/ by [email protected] This solves the problem as described in http://

Releases(v1.0.1)
Owner
smartSense Solutions
We are working to build community through open source.
smartSense Solutions
A beautiful Android custom View that works similar to a range or seekbar. With animations.

ValueBar A beautiful Android custom View that works similar to a range or seekbar. Selection by gesture. With animations. Supporting API level 11+. De

Philipp Jahoda 147 Nov 20, 2022
A lovely snail,You can use it as a seekbar or progressbar.

SnailBar A lovely ,you can use it as a seekbar or progressbar. Helixbar design by Davlikanoff.This is his words: Hi Guys! This 18 seconds long animati

CJJ 527 Jun 10, 2022
⚡️A highly customizable, powerful and easy-to-use alerting library for Android.

Flashbar A highly customizable, powerful and easy-to-use alerting library for Android. Specs This library allows you to show messages or alerts in you

Aritra Roy 1.7k Dec 7, 2022
Highly customizable SlidingLayer as you have seen in Wunderlist

6Wunderkinder SlidingLayer for Android This repository hosts a library that provides an easy way to include an autonomous layer/view that slides from

Microsoft Archive 942 Nov 28, 2022
A nicer-looking, more intuitive and highly customizable alternative for radio buttons and dropdowns for Android.

SwipeSelector Undergoing for some API changes for a 2.0 major version, see example usage in the sample module! What and why? Bored of dull looking rad

Iiro Krankka 1.1k Dec 30, 2022
Highly customizable SlidingLayer as you have seen in Wunderlist

6Wunderkinder SlidingLayer for Android This repository hosts a library that provides an easy way to include an autonomous layer/view that slides from

Microsoft Archive 942 Nov 28, 2022
Custom & highly configurable seek slider with sliding intervals, disabled state and every possible setting to tackle!

LabeledSeekSlider Custom & highly configurable seek slider with sliding intervals, disabled state and every possible setting to tackle! Minimum target

Edgar Žigis 78 Sep 27, 2022
Beautiful progress bar with segments. Highly customizable. Fully written with Jetpack Compose

?? SegmentedProgressBar ?? Beautiful progress bar split into several segments. Highly customizable. Fully written with Jetpack Compose. Why this libra

Stephen Vinouze 90 Dec 15, 2022
Custom UI control for android which is showing data as a segments and a value inside them.

Segmented Bar View for Android Custom UI control for android which is showing data as a segments and a value inside them. Screenshots Install From rep

GSPD 354 Nov 10, 2022
Dogglers app uses a RecyclerView in horizontal, vertical and grid view to show a group of CardViews

Welcome to DogglersApp! This app is the final project from Unit 2 of Android Basics in Kotlin given by Google codelabs: https://developer.android.com/

David Ortega Farrerons 1 Feb 25, 2022