Как установить поля для вертикальной полосы прокрутки от правого края в ListView? - PullRequest
19 голосов
/ 12 мая 2011

Для платформы Android:

Мне нужно поместить поле справа от вертикальной полосы прокрутки в списке (оно настраивается). Пожалуйста, смотрите прикрепленное изображение. Полоса прокрутки по умолчанию прилипает к правой стороне списка. image

Нужна твоя рука. Благодарю.

Ответы [ 3 ]

25 голосов
/ 25 февраля 2015

Если вы заботитесь о своем дизайне и хотите применить стиль во всем мире, используйте это.


Рез / значения / styles.xml

<item name="android:scrollbarThumbVertical">@drawable/scrollbar</item>

Рез / рисуем / scrollbar.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:right="4dp"> <!-- Your Margin -->
        <shape>
            <solid android:color="@color/red500" /> <!-- Your Color -->
            <corners android:radius="2dp" /> <!-- Your Radius -->
            <size android:width="4dp" /> <!-- Your Width -->
        </shape>
    </item>
</layer-list>

Все остальные ответы были созданы разработчиками, а не дизайнерами, как я.

Результат

Good ScrollBar

15 голосов
/ 18 мая 2011

См. документацию для android:scrollbarStyle атрибута View. Стиль, который вы, вероятно, хотите использовать: insideOverlay (в сочетании с android:paddingRight).

Что-то вроде

<LinearLayout android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center_horizontal"
    android:paddingRight="50dip">
    <ListView
        android:id="@+id/scrollable_table" 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:scrollbarStyle="insideOverlay">
    .
    .
    .
0 голосов
/ 08 июля 2017

Попробуйте включить быструю прокрутку, большую часть времени она работает:

<ListView
    android:id="@+id/chapter_list"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:fastScrollEnabled="true"/>
...