android 设置listview滚动条的位置,颜色和宽度

本文详细介绍了如何在Android中自定义ListView的滚动条样式,包括更改颜色、宽度、位置及保持滚动条始终可见等技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

在修改listview布局时,需要改滚动条的样式。忘记了是什么属性。在网上一搜,五花八门的,找了很久终于找到了属性。我决定写下来给更多的人看到。

 

系统默认的滚动条颜色是灰色的,我把它改成了白色,设置了他的宽度

list_scroll_bg.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <gradient 
        android:startColor="#ffffff" 
        android:endColor="#ffffff"
        android:angle="0"/>
    <size android:width="3dp"/>
	<corners android:radius="0dp" /> 
</shape>

 

<ListView
        android:id="@+id/main_listview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scrollbars="vertical"
        android:scrollbarThumbVertical="@drawable/list_scroll_bg"
        android:scrollbarSize="20dp"
        android:scrollbarAlwaysDrawVerticalTrack="true"
        android:scrollbarStyle="insideOverlay"
        android:scrollbarFadeDuration="0"
        android:fadeScrollbars="false">


一般滚动条的位置显示在内容里,显得有点丑,可用下面的方法改变其位置

mListView.scrollTo(mListView.getWidth()+24, 0);

也可以设置 android:scrollbarStyle="insideInset"或者android:scrollbarStyle="outsideInset",这个属性是设置滚动条不覆盖listview内容。如果想要滚动条离listview更远一点,用上面那个方法。

设置滚动条一直存在

android:scrollbarFadeDuration="0"
android:fadeScrollbars="false"

 

有时候设置了一些属性却没有相应的效果,比如设置listview的滚动条样式,想要一个图片作为滚动条显示,需要设置sdk的版本, minsdkversion 21。

 

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值