Circle ProgressBar Android изменить толщину и т. д

Я использую "нормальный" круг ProgressBar Android, который выглядит так:

Circle ProgressBar Android изменить толщину и т. д

Итак, что я хотел бы сделать, так это изменить цвет, толщину и углы (с угловым радиусом) этого ProgressBar.

Я нашел несколько примеров для этого, но, тем не менее, это было только для горизонтальных ProgressBar, но я хотел бы сохранить этот исходный ProgressBar.

Большое спасибо!

7
0
2 839
1

Ответы 1

Индикатор выполнения - это, по сути, рисованная анимация rotate. Вот что-то, что мы используем, более тонкое с другим цветовым градиентом. Вы можете увидеть использование thickness для ширины и цвета start и end.

Настройте на свой вкус:

<?xml version = "1.0" encoding = "utf-8"?>
<rotate xmlns:android = "http://schemas.android.com/apk/res/android"
        android:fromDegrees = "0"
        android:pivotX = "50%"
        android:pivotY = "50%"
        android:toDegrees = "720" >

  <shape
      android:shape = "ring"
      android:thickness = "@dimen/progress_circle_thickness"
      android:useLevel = "false" >

    <gradient
        android:angle = "0"
        android:endColor = "@color/progress_circle"
        android:startColor = "@android:color/transparent"
        android:type = "sweep"
        android:useLevel = "false" />
  </shape>
</rotate>

и используйте в своем макете что-то вроде этого:

<ProgressBar
    android:layout_width = "wrap_content"
    android:layout_height = "wrap_content"
    android:layout_gravity = "center"
    android:indeterminateDrawable = "@drawable/progress_circle"/>

Ваш ответ изменяет поведение индикатора выполнения. Автор внимательно относился к сохранению оригинального ProgressBar.

takesavy 17.05.2020 07:17

Я здесь не для того, чтобы разрабатывать ассеты для индикатора выполнения OP, если они не хотят меня нанять. В приведенном выше ответе приведен пример создания настраиваемого индикатора выполнения. Остальное - это упражнение для читателя.

Jeffrey Blattman 18.05.2020 19:38

Другие вопросы по теме