Как создать градиентную дугу с закругленными краями? - PullRequest
0 голосов
/ 28 мая 2018

Я хочу сделать индикатор выполнения в форме пончика с закругленными краями, похожий на этот:

enter image description here

Я пробовал это до сих пор:

ProgressBar в XML:

<ProgressBar style="@style/Widget.AppCompat.ProgressBar.Horizontal"
    android:layout_width="200dp"
    android:layout_height="200dp"
    android:layout_centerInParent="true"
    android:indeterminate="false"
    android:max="100"
    android:progress="0"
    android:layout_margin="2dp"
    android:progressDrawable="@drawable/shape_ring_gradient"
    android:rotation="-90.0"
    android:visibility="visible"
    android:id="@+id/progress_bar" />

shape_ring_gradient.png:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="ring"
    android:innerRadiusRatio="2.17391304"
    android:thicknessRatio="25.0"
    android:useLevel="true">

    <gradient
        android:endColor="#FE000A"
        android:gradientRadius="1000"
        android:startColor="#EB288B"
        android:angle="180"
        android:type="linear" >
    </gradient>

</shape>

Java-код:

ProgressBar progressBar = getView().findViewById(R.id.progress_bar);
progressBar.setProgress(82);

Результат:

enter image description here

Теперь мой вопрос, как я могу:

  • сделать кольцо толще?
  • закруглить края?

спасибо за помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...