SeekBar Android pollice viene ritagliato / tagliata
-
04-10-2019 - |
Domanda
Quando si utilizza una drawable pollice personalizzato con una vista SeekBar
, drawable pollice viene troncato alla bordi destro e sinistro della vista.
Come posso risolvere questo comportamento?
Soluzione
Si dovrebbe essere in grado di risolvere questo problema impostando paddingLeft
e paddingRight
sul SeekBar
alla metà della larghezza del pollice (ricordarsi di usare unità di densità-indipendenti). È inoltre possibile controllare lo spazio consentito ai bordi di un pollice di cercare bar chiamando setThumbOffset
.
Altri suggerimenti
mi sono imbattuto in questo problema me stesso, e credo che il "correct"
decisione sarebbe quella di modificare android:thumbOffset
come stile predefinito per un SeekBar set a 8px.
Per impostazione predefinita SeekBar ho usato queste impostazioni e funziona benissimo:
android:paddingLeft="6dp"
android:paddingRight="6dp"
android:thumbOffset="8dp"
Solo per chiarezza.
In alcuni posti che ho visto
android:thumbOffset="8dp"
ed alcune
android:thumbOffset="8px"
Così ho guardato il codice sorgente. questo è lo stile originale
<style name="Widget.SeekBar">
<item name="android:indeterminateOnly">false</item>
<item name="android:progressDrawable">@android:drawable/progress_horizontal</item>
<item name="android:indeterminateDrawable">@android:drawable/progress_horizontal</item>
<item name="android:minHeight">20dip</item>
<item name="android:maxHeight">20dip</item>
<item name="android:thumb">@android:drawable/seek_thumb</item>
<item name="android:thumbOffset">8dip</item>
<item name="android:focusable">true</item>
</style>
da