我注意到在Android 6.0 Marshmallow中有新的行为。滚动条的触摸区域比滚动条本身更宽。如下所示,可以看到这一点。滚动条有20dp(绿色区域),触摸区域可能是48dp(蓝色和绿色区域)。我希望仅在滚动条上方有触摸区域:
快速滚动条始终可见,我在列表视图中使用以下样式:
但是结果更像外部覆盖。我只能在Marshmallow设备上观察到这个问题。我想找到导致它的属性,并将其从48dp更改为20dp。你能帮我吗?
我使用以下内容:
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="MyTheme.Dark" parent="android:Theme.Black">
<item name="android:fastScrollStyle">@style/Widget.FastScroll</item>
<item name="android:scrollbarThumbVertical">@drawable/dark_scrollbar_thumb</item>
<item name="android:scrollbarTrackVertical">@drawable/dark_scrollbar_track</item>
<item name="android:scrollbarSize">4dp</item>
<item name="android:fastScrollThumbDrawable">@drawable/dark_scrollbar_fast_thumb</item>
<item name="android:fastScrollTrackDrawable">@drawable/dark_scrollbar_fast_track</item>
</style>
<style name="Widget.FastScroll" parent="android:Widget.Material.FastScroll">
</style>
</resources>
dark_scrollbar_fast_thumb.xml:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape>
<size
android:height="30dp"
android:width="20dp" />
<solid android:color="@android:color/transparent" />
</shape>
</item>
<item android:left="8dp" android:right="8dp">
<shape>
<size
android:height="30dp"
android:width="4dp" />
<solid android:color="@color/dark_secondary" />
</shape>
</item>
</layer-list>
dark_scrollbar_fast_track.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<size android:width="@dimen/1dp" />
<solid android:color="@color/dark_scrollbar_track" />
</shape>
dark_scrollbar_fast_thumb.xml:
<item>
<shape>
<size
android:height="30dp"
android:width="20dp" />
<solid android:color="@android:color/transparent" />
</shape>
</item>
<item android:left="8dp" android:right="8dp">
<shape>
<size
android:height="30dp"
android:width="4dp" />
<solid android:color="@color/dark_secondary" />
</shape>
</item>
dark_scrollbar_fast_track.xml:
<size android:width="@dimen/1dp" />
<solid android:color="@color/dark_scrollbar_track" />
快速滚动条始终可见,我在列表视图中使用以下样式:
<item name="android:scrollbarStyle">outsideInset</item>
但是结果更像外部覆盖。我只能在Marshmallow设备上观察到这个问题。我想找到导致它的属性,并将其从48dp更改为20dp。你能帮我吗?