これが古い投稿であることは知っていますが、同じ問題が発生し、機能させています。
実際には思ったより簡単です。ドローアブルフォルダ内のxmlファイルにカスタム進行状況を設定し、<rotate>タグの属性「fromDegrees」と「toDegrees」を処理する必要があります。
これはcustom_progress.xmlのコードです(必要に応じてカスタマイズできますが、「fromDegrees」と「toDegrees」を変更しないでください)
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape
android:innerRadiusRatio="2.3"
android:shape="ring"
android:useLevel="false"
android:type="sweep"
android:thicknessRatio="15.0">
<solid android:color="#0099ff"/>
</shape>
</item>
<item android:id="@android:id/progress">
<rotate
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="-90"
android:toDegrees="-90">
<shape
android:innerRadiusRatio="2.3"
android:shape="ring"
android:angle="0"
android:type="sweep"
android:thicknessRatio="15.0">
<solid android:color="#e0e0e0"/>
</shape>
</rotate>
</item>
</layer-list>
また、プログレスバーには、次の属性を設定する必要があります。
<ProgressBar
android:id="@+id/progressbar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="100dp"
android:layout_height="100dp"
android:indeterminate="false"
android:max="100"
android:progress="20"
android:progressDrawable="@drawable/custom_progress" />
ここで起こっていることは、進行状況が-90度で始まり、私にとっては進行状況バービューの上面であり、右側に向かって進み、同じ程度に向かって続くということです。これにより、ビューの進行状況が開始および終了します。同程度。
注:
「fromDegrees」と「toDegrees」の両方に0を設定すると、進行は円の右側から始まります。
それが同じ要件を持つ人々に役立つことを願っています。