Android ProgressBar设置进度圆角

时间:2014-06-11 22:00:39

标签: android

我创建了以下进度条样式,并将角半径设置为两个形状(背景和pogress)。但似乎当我动画/设置进度低于90时,我的进度条当前进度显示矩形边框,没有任何半径。我想知道是否有可能一直有角半径,即使进度是30或小于90,95。谁能解释为什么这不起作用?

此外,我需要使用API​​ LEVEL 8

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

    <!-- Define the background properties like color etc -->
    <item android:id="@android:id/background">
        <shape>
            <corners android:radius="25dp" />
            <solid android:color="#00000000"></solid>
        </shape>
    </item>

    <!-- Define the progress properties like start color, end color etc -->
    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <corners android:radius="25dp" />
                <gradient
                    android:startColor="#fff"
                    android:centerColor="#fff"
                    android:centerY="1.0"
                    android:endColor="#0d1522"
                    android:angle="270"
                    />
            </shape>
        </clip>
    </item>
</layer-list>

更新:我添加了解释我的问题的正确代码

2 个答案:

答案 0 :(得分:0)

确定。在研究并做了一些尝试来完成这个之后,我只得到了使用9 patched PNG文件来完成这项工作的解决方案。

答案 1 :(得分:0)

绝对有可能一直有角半径。我是通过在自定义进度条的setcontentview方法之前添加此行来完成的。

customProgressDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));

这将使您的整个视图透明化。因此,用一些颜色填充角落内的边界。