相关疑难解决方法(0)

圆形进度条中的圆形进度

我正在尝试在我们正在处理的应用程序中创建自定义进度条,我需要的最后一块是进度指示器本身.相反,我想让条形圆形就像进度条本身的左手边和右手边一样,就像在第二个图像中一样(当然减去红色圆圈).

在此输入图像描述

在此输入图像描述

这是进度条的布局定义(为简洁起见,省略了布局文件的其余部分):

<ProgressBar
    android:id="@+id/progress_bar"
    android:layout_width="fill_parent"
    android:layout_height="60dp"
    android:padding="3dp"
    android:max="100"
    android:progressDrawable="@drawable/progress_bar_states"
    android:layout_marginTop="10dp"
    style="?android:attr/progressBarStyleHorizontal"
    android:indeterminateOnly="false"
    android:layout_below="@id/textview2"
    android:layout_alignLeft="@id/textview2"
    />
Run Code Online (Sandbox Code Playgroud)

这是progress_bar_states.xml文件:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:id="@android:id/background">
        <shape>
            <solid android:color="#20ffff00"/>
            <corners android:radius="60dp"/>
        </shape>
    </item>

    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <solid android:color="#20ffffff"/>
                <corners android:radius="60dp"/>
            </shape>
        </clip>
    </item>

</layer-list>
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?我没有看到任何选项允许我根本定义进度指示器.我应该以不同的方式做这件事吗?我在Android上仍然很新,所以任何指导都表示赞赏.

@Ando - 您的解决方案非常接近我的需求.指标运动的开始现在是问题,我猜它是因为它不像原始的那样.当指标开始,并在开始时达到某一点,看起来它被"挤压"

在此输入图像描述

直到它到达适当的点然后它看起来很好:

在此输入图像描述

我们如何使用此解决方案在一开始就完成"裁剪"?

对于@bladefury - 正如您所看到的,与上图中的前沿相比,它确实看起来很平坦.

在此输入图像描述

编辑:在看了很长一段时间之后,我在https://github.com/akexorcist/Android-RoundCornerProgressBar/issues看了一个新的组件,它和这里的建议有同样的问题.

android android-progressbar

18
推荐指数
3
解决办法
1万
查看次数

标签 统计

android ×1

android-progressbar ×1