Подтвердить что ты не робот

Android SeekBar thumb получает обрезание/обрезание

При использовании пользовательского большого пальца с рисунком SeekBar снимок с большим пальцем обрезается в левом и правом краях представления.

Как я могу исправить это поведение?

4b9b3361

Ответ 1

Вы можете исправить это, установив paddingLeft и paddingRight на SeekBar на половину ширины большого пальца (помните для использования не зависящих от плотности единиц). Вы также можете управлять пространством, разрешенным по краям для большого пальца строки поиска, вызывая setThumbOffset.

Ответ 2

Я столкнулся с этой проблемой сам, и я считаю, что решение "correct" должно было бы изменить android:thumbOffset, поскольку стиль по умолчанию для SeekBar устанавливает его в 8px.

Ответ 3

По умолчанию SeekBar я использовал эти настройки, и он отлично работает:

android:paddingLeft="6dp"
android:paddingRight="6dp"

android:thumbOffset="8dp"

Ответ 4

Просто для уточнения.

В некоторых местах я видел

 android:thumbOffset="8dp"

и некоторые

android:thumbOffset="8px"

поэтому я посмотрел исходный код. это оригинальный стиль

<style name="Widget.SeekBar">
        <item name="android:indeterminateOnly">false</item>
        <item name="android:progressDrawable">@android:drawable/progress_horizontal</item>
        <item name="android:indeterminateDrawable">@android:drawable/progress_horizontal</item>
        <item name="android:minHeight">20dip</item>
        <item name="android:maxHeight">20dip</item>
        <item name="android:thumb">@android:drawable/seek_thumb</item>
        <item name="android:thumbOffset">8dip</item>
        <item name="android:focusable">true</item>
    </style>

из

https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/res/res/values/styles.xml