相反地​​旋转圆形进度条

时间:2016-11-19 04:59:57

标签: android-studio progress-bar

我想旋转圆形进度条反时钟。

<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="270"
android:toDegrees="270">
    <shape
    android:innerRadiusRatio="2.5"
    android:shape="ring"
    android:thickness="3dp"
    android:useLevel="true">

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

通过这种方式,我可以顺时针移动,但我想在相反的方向旋转我的进度条。任何解决方案?

Like this

1 个答案:

答案 0 :(得分:0)

创建一个扩展ProgressBar的自定义类,并使用该类在xml文件中创建进度条。

公共类CustomCircularProgress扩展了ProgressBar {

public CustomCircularProgress(Context context, AttributeSet attrs, int defStyle) {
    super(context, attrs, defStyle);
    // TODO Auto-generated constructor stub
}

public CustomCircularProgress(Context context, AttributeSet attrs) {
    super(context, attrs);
    // TODO Auto-generated constructor stub
}

public CustomCircularProgress(Context context) {
    super(context);
    // TODO Auto-generated constructor stub
}

@Override
protected synchronized void onDraw(Canvas canvas) {
    // TODO Auto-generated method stub

    canvas.scale(-0.5f, 0.5f, super.getWidth() * 0.5f, super.getHeight() * 0.5f);
    super.onDraw(canvas);
}}

https://developer.android.com/reference/android/graphics/Canvas.html#scale(float,float,float,float)

中查看比例(float sx,float sy,float px,float py)

我是从stackoverflow本身得到的。但我没有获得引用的链接