listView中的scrollBar ...自定义它。

时间:2011-07-30 02:29:08

标签: android listview scrollbar customization

有没有办法自定义ListView在android中提供的标准滚动条..?我还没有得到明确的答案:/

2 个答案:

答案 0 :(得分:15)

res/styles.xml中创建主题:

<style name="CustomTheme" parent="android:Theme">
    <item name="android:scrollbarTrackVertical">@drawable/scroll_track</item>
    <item name="android:scrollbarThumbVertical">@drawable/scroll_thumb</item>
</style>

@drawable/scroll_track@drawable/scroll_thumb必须引用九个修补程序图像或形状绘图。滚动轨迹图像是滚动条的背景。 Scroll thumb负责滚动手柄。然后将主题应用于整个应用程序或AndroidManifest.xml中的活动:

<application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@style/CustomTheme">

答案 1 :(得分:2)

您也可以在布局中的ListView或ScrollView中指定它。我从我的代码中提供了一个截图示例:

enter image description here

<ListView
    android:id="@+id/listView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/divider_bar"
    android:layout_marginTop="5dp"

    android:scrollbarAlwaysDrawVerticalTrack="true"
    android:scrollbarStyle="outsideOverlay"
    android:scrollbars="vertical"
    android:fadeScrollbars="true"
    android:scrollbarThumbVertical="@drawable/scrollbar_vertical_thumb"
    android:scrollbarTrackVertical="@drawable/scrollbar_vertical_track"
    android:scrollbarFadeDuration="500"
    android:scrollbarDefaultDelayBeforeFade="1000">
</ListView>