如何设置VerticalSeekBar的可绘制进度?

时间:2013-02-16 03:50:35

标签: android seekbar

我使用How can I get a working vertical SeekBar in Android?上描述的VerticalSeekBar。这是一个非常好的工作,对我来说很好。但是当我在layout xml中设置progressDrawable时,它不起作用。有什么建议吗?

以下是我的布局xml中的代码段:

<com.aidufei.widget.VerticalSeekBar
android:id="@+id/volume_bar"
android:layout_width="16dip"
android:layout_height="160dip"
android:background="@drawable/volume_bar_bg"
android:paddingBottom="20dip"
android:progressDrawable="@drawable/vol_seekbar_style"
android:thumb="@drawable/volume_thumb"
android:thumbOffset="-13dip" />

和vol_seekbar_style.xml:`

<item android:id="@android:id/background">
    <shape>
        <corners android:radius="5dip" />

        <gradient
            android:angle="360"
            android:centerColor="#868781"
            android:centerY="1"
            android:endColor="#868781"
            android:startColor="#868781" />
    </shape>
</item>
<item android:id="@android:id/progress">
    <clip>
        <shape>
            <gradient
                android:angle="90"
                android:endColor="#3B3934"
                android:startColor="#3B3934" />

            <corners android:radius="5dip" />
        </shape>
    </clip>
</item>

` VerticalSeekBar.java:https://gist.github.com/maxhis/4739037

1 个答案:

答案 0 :(得分:0)

在这里,你有一个工作的例子:

<myapp.VerticalSeekBar
       android:id="@+id/mySeekBar"
       android:layout_width="wrap_content"
       android:layout_height="200dp"
       android:layout_gravity="center_horizontal"
       android:layout_marginBottom="10dp"
       android:max="50"
       android:maxHeight="11dip"
       android:minHeight="11dip"
       android:paddingLeft="10dp"
       android:paddingRight="10dp"
       android:progress="25"
       android:progressDrawable="@drawable/seekbar_progress"
       android:thumb="@drawable/bg_seekbar_ball" />

<强> @绘制/ seekbar_progress:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@android:id/background"
        android:drawable="@drawable/bg_seekbar_bellow"/>
    <item
        android:id="@android:id/progress"
        android:drawable="@drawable/bg_seekbar_above"/>

</layer-list>

希望它在某种程度上有所帮助;)
小心。