Настройка SeekBar - как правильно расположить пользовательское изображение «большого пальца»?

Я настроил свой SeekBar - я использую пользовательское изображение в качестве фона и пользовательское изображение в качестве большого пальца ( Как создать пользовательский макет для панели поиска в Android? & Как настроить внешний вид SeekBar в Android? ).

Идея состоит в том, чтобы создать SeekBar, который будет выглядеть как на этом изображении:

enter image description here

​​Я хочу, чтобы изображение большого пальца идеально вписывалось в закругленную полосу, когда значение progress установлено на 0 или 100 (из 100).

По порядку правильно расположить большой палец (т.е. не перекрывать концы полосы). Я установил значения paddingLeft и paddingRight ровно на половину ширины ползунка ( Android: панель поиска не прокручивает все способ окончания ).

... / res / layout / main.xml:


    android:background="@drawable/hos_bar" 
    android:paddingLeft="24dp"
    android:paddingRight="24dp">

Это работает в Android 2.1.


В Android 2.2 это дает другой эффект:

enter image description here


После дальнейшего исследования (и попытки сделать это с полностью установленным по умолчанию SeekBar я обнаружил, что положение изображения большого пальца изменилось с 2.1 на 2.2. Мой прием по изменению paddingLeft & paddingRight не является проблемой.

  • В 2.1 большой палец центрируется вокруг конца планки, а половина большого пальца находится на планке, и половина его от планки.
  • В 2.2 большой палец расположен внутри панели, без какого-либо перекрытия. Отсюда странный способ, которым значения заполнения влияют на результат. Это то, чего я пытался достичь, но когда использовал пользовательский большой палец, этот эффект больше не работает таким же образом.

Я думаю, мне нужно создать собственный класс java для обработки такого типа вещей. В этом вопросе ( Можно ли сделать закругленные углы в пользовательской Progressbar progressDrawable? ), разработчик использует ClipDrawable , чтобы создать нормальный индикатор выполнения.

Что за pe из вытягиваемого объекта, что я использую и как правильно расположить большой палец?

8
задан Community 23 May 2017 в 12:00
поделиться