让seekbar thumb hitbox更大

时间:2014-01-08 19:59:23

标签: android seekbar

我制作了一个看起来像这样的自定义搜索栏

enter image description here

事情是抓住滑块非常困难。所以我想要的是增加拇指的命中箱以使其更容易。我尝试了一些东西,但总是弄乱了搜索栏的外观。任何想法我怎么能这样做?

layout.xml

<SeekBar
    android:id="@+id/xxx"
    style="@style/SeekBar"
    android:layout_width="@dimen/pixel_130dp"
    android:layout_below="@+id/name_textview"
    android:layout_centerHorizontal="true" />

styles.xml

<style name="SeekBar">
    <item name="android:layout_height">@dimen/pixel_20dp</item>
    <item name="android:maxHeight">@dimen/pixel_20dp</item>
    <item name="android:minHeight">@dimen/pixel_20dp</item>
    <item name="android:thumb">@drawable/seek_bar_thumb</item>
    <item name="android:paddingLeft">@dimen/pixel_5dp</item>
    <item name="android:paddingRight">@dimen/pixel_5dp</item>
    <item name="android:paddingTop">@dimen/pixel_2dp</item>
    <item name="android:paddingBottom">@dimen/pixel_2dp</item>
    <item name="android:progressDrawable">@drawable/seek_bar_progress_drawable</item>
</style>

seek_bar_thumb.xml

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

    <item>
        <shape>
            <size
                android:height="@dimen/pixel_16dp"
                android:width="@dimen/pixel_25dp" />

            <solid android:color="@android:color/transparent" />
        </shape>
    </item>
    <item android:drawable="@drawable/slider_thumb"/>

</layer-list>

2 个答案:

答案 0 :(得分:1)

好吧,因为显然没有明智的方法可以做到这一点,这就是我现在所做的;我找到的唯一解决方案是在拇指图像周围添加一个透明区域。我将其大小加倍,并将thumbOffset参数添加到Seekbar。这似乎不是最好的解决方案,但至少它适用于我的情况。

答案 1 :(得分:0)

TouchDelegate课程似乎是一个很好的起点。

请参阅此tutorial了解如何使用它。