我必须在webview中自定义滚动条 - 更改轨迹和拇指颜色,形状(简单矩形)。我找不到任何有关自定义webview滚动条的信息,只有listviews。
到目前为止,我创建了:
styles.xml
<style name="CustomScrollBar">
<item name="android:scrollbarAlwaysDrawVerticalTrack">true</item>
<item name="android:scrollbarStyle">outsideOverlay</item>
<item name="android:scrollbars">vertical</item>
<item name="android:fadeScrollbars">true</item>
<item name="android:scrollbarThumbVertical">@drawable/custom_scrollbar_thumb</item>
<item name="android:scrollbarTrackVertical">@drawable/custom_scrollbar_track</item>
<item name="android:scrollbarSize">12dp</item>
<item name="android:scrollbarFadeDuration">2000</item>
<item name="android:scrollbarDefaultDelayBeforeFade">1000</item>
</style>
抽拉/ custom_scrollbar_track.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<gradient
android:angle="0"
android:endColor="@color/gray"
android:startColor="@color/gray" />
<corners android:radius="6dp" />
</shape>
抽拉/ custom_scrollbar_thumb.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<gradient
android:angle="0"
android:endColor="@color/green"
android:startColor="@color/green" />
<corners android:radius="6dp" />
</shape>
但是,wv.setScrollBarStyle(R.style.CustomScrollBar);
给了我一个错误:
必须是以下之一:View.SCROLLBARS_INSIDE_OVERLAY, View.SCROLLBARS_INSIDE_INSET,View.SCROLLBARS_OUTSIDE_OVERLAY, View.SCROLLBARS_OUTSIDE_INSET
答案 0 :(得分:4)
这比我想象的容易。 刚刚添加
android:scrollbarThumbVertical="@drawable/custom_scrollbar_thumb"
android:scrollbarTrackVertical="@drawable/custom_scrollbar_track"
布局文件中我的webview的属性。当然,我必须从可绘制文件中删除角落属性。