2014-01-08 34 views
2

我做了一個自定義的搜索條,看起來像這樣讓搜索條拇指擊中格大

enter image description here

的事情是,它是相當困難的搶滑塊。所以我想要增加拇指的hitbox使其更容易。我嘗試了一些東西,但總是搞砸了seekbar的樣子。任何想法我怎麼能做到這一點?

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> 

回答

1

好的,因爲顯然沒有更聰明的方法來做到這一點,所以我現在要做的是:我發現唯一的解決方案是在拇指圖像周圍添加透明區域。我將其尺寸加倍並將thumbOffset參數添加到Seekbar。這似乎不是最好的解決方案,但至少它適用於我的情況。

0

TouchDelegate類似乎是一個良好的開端。

有關如何使用它的信息,請參閱此tutorial

+1

這就是我最初的想法。雖然TouchDelegate的工作,我需要知道滑塊拇指的ID,我不知道是否有一個。我的意思是,我不想增加整個滑塊的hitbox,只用於滑塊大拇指。 – SimonSays