Android 自定义水平进度条

Android 自定义水平进度条,android,Android,哎,, 我刚刚写了一个水平进度条。progressbar获取此后台资源: <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background"> <inset xmlns:android="http://schemas.android.com/apk/res/android" andro

哎,, 我刚刚写了一个水平进度条。progressbar获取此后台资源:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
    <inset xmlns:android="http://schemas.android.com/apk/res/android"
        android:drawable="@drawable/progress_bg" />
</item>
<item android:id="@android:id/progress" android:gravity="center">
    <clip>
        <shape>
            <corners android:radius="5dip" />
            <solid android:color="#FFF" />
        </shape>
    </clip>
</item>

这很好,但白色进度与背景具有相同的高度。但是我希望进度比进度条的背景小,因为背景有一个边界,不应该重叠

有什么想法吗? 谢谢

还有:

<item android:id="@android:id/secondaryProgress"></item>

你也换了吗?

您可以尝试将
android:top
android:left
android:right
android:bottom
添加到白色进度条
,以便为进度条添加填充

<item android:id="@android:id/progress" android:gravity="center"
    android:top="2dp" android:left="2dp" android:right="2dp" android:bottom="2dp">
    <clip>
        <shape>
            <corners android:radius="5dip" />
            <solid android:color="#FFF" />
        </shape>
    </clip>
</item>

嗨,实际上我没有用它

完整的xml是:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
    <inset xmlns:android="http://schemas.android.com/apk/res/android"
        android:drawable="@drawable/progress_bg" />
</item>
<item android:id="@android:id/secondaryProgress" android:gravity="center">
    <clip>
        <shape>
            <corners android:radius="5dip" />
            <solid android:color="#FFF" />
        </shape>
    </clip>
</item>


干杯

嗨,尝试添加没有颜色的笔划(不透明度为最大值) 我用渐变进度条尝试了以下代码:

    <?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>
            <corners android:radius="10dip" />
            <gradient
                android:angle="270"
                android:centerColor="#f8d79b"
                android:centerY="0.5"
                android:endColor="#f8d79b"
                android:startColor="#f8d79b" />
        </shape>
    </item>
    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <stroke
                    android:width="5px"
                    android:color="#00ffffff" />
                <corners android:radius="10dip" />
                <gradient
                    android:angle="0"
                    android:endColor="#ffac17"
                    android:startColor="#ffac17" />
            </shape>
        </clip>
    </item>
</layer-list>

因此,您的代码应该如下所示:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
    <inset xmlns:android="http://schemas.android.com/apk/res/android"
        android:drawable="@drawable/progress_bg" />
</item>
<item android:id="@android:id/secondaryProgress" android:gravity="center">
    <clip>
        <shape>
           <stroke
                    android:width="5px"
                    android:color="#00ffffff" />
            <corners android:radius="5dip" />
            <solid android:color="#FFF" />
        </shape>
    </clip>
</item>


为我工作,希望它为你工作:D

嗨,这不会改变它,白色进度仍然和整个背景图像一样大。。。