Android在XML中绘制自己的seekbar thumb

时间:2012-07-09 14:45:48

标签: android

请帮助为SeekBar Thumb定义自己的XML drawable。 在这个XML drawable中,我想为state_selectedstate_pressed定义自定义形状。

据我了解,在XML中的SeekBar定义中,我们必须将android:thumb="@drawable/listview_bg_selector"置于listview_bg_selector的位置:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="false"
        android:state_pressed="false"
        android:drawable="@drawable/seekbar_thumb_default" /> 
    <item android:state_pressed="true"
        android:drawable="@drawable/seekbar_thumb_clicked"
        />
    <item android:state_selected="true"
        android:state_pressed="false"
        android:drawable="@drawable/seekbar_thumb_selected" 
         />
</selector>

但接下来要做什么,我在这里尝试使用带有形状的drawables代码,但没有正常工作,我只看到了默认的SeekBar。 这个问题有没有例子?

3 个答案:

答案 0 :(得分:4)

你可以在这个link中找到你真正想要的东西,但它是一个法语网站,你可以专注于你可以从here下载的源代码

答案 1 :(得分:3)

这样的事情为我解决了问题。

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

    <item android:drawable="@drawable/seek_thumb_pic">
        <shape android:shape="rectangle" />
    </item>

</selector>

另一种方式可能是在代码中设置边界但我不确定这一点。

答案 2 :(得分:3)

对于未来的求职者,我使用holo-colors.com创建了自己的自定义SeekBar,我非常满意。

它们还提供了创建其他Android元素的功能,例如SpinnerSwitch等。