Как настроить внешний вид SeekBar в Android?
Я использую SeekBar
в своем приложении, и я хотел бы немного его настроить. Я уже понял, как изменить Drawable
для большого и заднего фона.
Мой вопрос в том, как изменить размер SeekBar
? Если я просто изменяю высоту SeekBar like this, the
Вид is only clipped and it only shows the top piece of the
SeekBar`:
<SeekBar
android:layout_height="10dip"
style="@style/seekbar_style" />
Как изменить общий размер SeekBar
? Я хочу, чтобы он был намного тоньше, чем стандартный SeekBar
.
Ответы
Ответ 1
Я не уверен в Seekbars, но Progressbars можно настроить с помощью пользовательского стиля (определенного в ваших styles.xml), например:
<style name="MyCustomProgressStyle">
<item name="android:indeterminateOnly">false</item>
<item name="android:progressDrawable">@drawable/custom_progress_drawable</item>
<item name="android:indeterminateDrawable">@android:drawable/progress_indeterminate_horizontal</item>
<item name="android:minHeight">10dip</item>
<item name="android:maxHeight">10dip</item>
</style>
Затем вы можете настроить пользовательский чертеж, основанный на системе Android progress_horizontal.xml
(он находится в папке frameworks/base/core/res/drawable
пример из проекта с открытым исходным кодом.
Ответ 2
У вас есть эквивалент этого индикатора хода для поиска:
<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">8px</item>
<item name="android:focusable">true</item>
</style>
Таким образом, вы можете переопределить все это и сделать это по-своему, как вы это сделаете для заголовка, определив свой собственный стиль.