jt-gilkeson
jt-gilkeson

Reputation: 2721

How to show tick marks for Discrete Slider?

enter image description here

I'm trying to style a seekbar/slider like the one labeled Discrete Slider - Click (that has the little tick mark indicators) in the Material Design Guidelines. I can't figure out the magical incantation to have the tickmarks show up, does anyone know how to do this?

I have a seekbar with 5 positions (0-4)

<SeekBar
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:max="4" />

Upvotes: 13

Views: 20521

Answers (3)

Trang Đỗ
Trang Đỗ

Reputation: 180

use com.google.android.material.slider.Slider

app:tickVisible="true" // false

Upvotes: 0

Gabriele Mariotti
Gabriele Mariotti

Reputation: 364506

Now you can use the Slider in the Material Components Library.
The tick marks are displayed by default in the discrete sliders.

    <com.google.android.material.slider.Slider
        android:valueFrom="0"
        android:valueTo="10"
        android:stepSize="1"
        .../>

enter image description here

Upvotes: 3

NameSpace
NameSpace

Reputation: 10177

Add tick marks with the style attribute:

<SeekBar
    android:id="@+id/seekBar"
    style="@style/Widget.AppCompat.SeekBar.Discrete"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:max="10"
    />

Or add them manually by setting the tickMark drawable:

<SeekBar
    android:id="@+id/seekBar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:max="10"
    android:tickMark="@drawable/tickmark"
    />

tickmark.xml

<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="oval">
    <size android:width="4dp"
          android:height="4dp"/>
    <solid android:color="@android:color/white"/>
</shape>

Upvotes: 22

Related Questions