2013-05-15 5 views
11

Kürzlich habe ich an einer App gearbeitet, die eine SeekBar hat. Die SeekBar ist ziemlich dünn, so dass es manchmal schwierig sein kann, sie zu benutzen (Sie müssen sehr präzise in Ihren Gesten sein). Gibt es eine Möglichkeit, den berührbaren Bereich des SeekBar zu erhöhen? Also möchte ich, dass Benutzer in der Lage sind, über oder unter dem SeekBar zu berühren, um den Daumen zu bewegen. Ich würde mich über jede Hilfe freuen, die Sie anbieten können!Android SeekBar Touch Sensitivity

Antwort

28

Eine der einfachsten Methoden ist es, einen Wert des android:padding Attribut zu erhöhen:

<SeekBar 
    android:id="@+id/yourSeekBar" 
    android:progressDrawable="@drawable/seekbar_progress" 
    android:thumb="@drawable/seekbar_thumb" 
    android:paddingTop="@dimen/your_topPadding" 
    android:paddingBottom="@dimen/your_bottomPadding" /> 

Eine andere Möglichkeit: eine benutzerdefinierte Daumen machen und Hintergrund der Größe erhöhen durch Zugabe von z.B. transparente Grenze.

Sie können auch this library für komplexere SeekBars verwenden.

Darüber hinaus haben Sie there ein nettes Tutorial, das eine benutzerdefinierte SeekBar Erstellung beschreibt.

+1

Nun, das war einfach! Hinzufügen der Polsterung oben und unten funktioniert wie ein Charme! – Zero

+0

Wenn die enthaltene Ansicht groß genug ist, können Sie auch negative Ränder festlegen, um die Auffüllung auszugleichen, damit das Layout nicht beschädigt wird, vorausgesetzt, Sie haben keine anderen berührbaren Widgets im vergrößerten Bereich. – Tenfour04