我有一个用于回收者视图的自定义垂直滚动条,但用于显示项目位置的拇指有点太大而在顶部时处于关闭位置。
在styles.xml中,我使用thumb.xml和track.xml文件为自定义轨道和拇指定义了自定义滚动条。在recyler.xml中,我添加了一个style属性来显示自定义滚动条,同时还有填充。
我如何解决这个问题的想法,我尝试在thumb.xml中更改宽度和高度,但它不起作用。谢谢!
Styles.xml文件:
<resources>
<style name="AppTheme" parent="@style/Theme.Leanback">
<item name="@attr/scrollbarStyle">@style/scrollbar_shape_style</item>
</style>
<attr name="scrollbarStyle" format="reference"/>
<style name="scrollbar_shape_style">
<item name="android:scrollbarAlwaysDrawVerticalTrack">true</item>
<item name="android:scrollbarStyle">outsideOverlay</item>
<item name="android:scrollbars">vertical</item>
<item name="android:fadeScrollbars">false</item>
<item name="android:scrollbarThumbVertical">@drawable/thumb</item>
<item name="android:scrollbarTrackVertical">@drawable/track</item>
<item name="android:scrollbarSize">8dp</item>
</style>
thumb.xml文件:
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<gradient
android:angle="0"
android:endColor="#ffffff"
android:startColor="#ffffff" />
<corners android:radius="5dp" />
<size android:width="8dp" />
<size android:height="3dp" />
track.xml文件:
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<gradient
android:angle="0"
android:endColor="#9BA3C5"
android:startColor="#8388A4" />
<stroke
android:width="7dp"
android:color="#00ffffff"/>
</shape>
Recycler的xml文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="383dp"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler"
style="@style/scrollbar_shape_style"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:paddingEnd="50dp"
android:paddingStart="0dp"/>
</LinearLayout>
答案 0 :(得分:0)
我在滚动条上设置了拇指以确定尺寸。 这是修复大小
的thumb.xml文件<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:gravity="top">
<shape android:shape="rectangle">
<corners android:radius="100dp" />
<solid android:color="#e9eef2" />
<size
android:width="5dp"
android:height="25dp" />
</shape>
</item>