Android 自定义滚动条
做前端肯定离不开设计师要求自定义滚动条内容,相对于 iOS / Web ,Android 相对比较容易控制,我们可以非常方便的改变 View 或者 WebView 的样式。Android 提供了两个 xml 属性
他们分别表示我们需要改变滚动条的拖拽部分和底部轨道的样式。
如下图
比较常规的设计,我们实现一个带圆角的矩形,我们在 drawable 目录下新建两个文件
custom_scrollbar_thumbnail.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#c4de17" />
<corners android:radius="2dp" />
<size android:width="4dp"/>
<padding
android:left="0.5dp"
android:right="0.5dp" />
</shape>
custom_scrollbar_track.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#05000000" />
<corners android:radius="2dp" />
<size android:width="4dp"/>
<padding
android:left="0.5dp"
android:right="0.5dp" />
</shape>
在需要变动滚动条样式的组件里面申明引用
比如 webview
<WebView
android:id="@+id/contentWebView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbarThumbVertical="@drawable/custom_scrollbar_thumbnail"
android:scrollbarTrackVertical="@drawable/custom_scrollbar_track"
/>