如何为ListView的缩略图设置固定大小?

3

我正在为 ListView 使用自定义的 thumb:

thumb

使用样式

<style name="CustomTheme" parent="@android:style/Theme.NoTitleBar">
    <item name="android:scrollbarThumbVertical">@drawable/scroll_thumb</item>
</style>

但是在应用程序中,它看起来像这样:

问题

我该如何设置滑块的大小?

编辑

我不想使用九宫格图像。我需要为我的滑块设置固定大小。


我不确定,但也许这个问题的答案可以帮到你。 - dudeldidadum
@kyp,谢谢,但不是这样的。我只是阅读了它,并使用这个示例创建了我的滚动条。 - Dmitry Zaytsev
你用了什么样的例子? - cracked_all
@cracked_all 请查看第一条评论中提供的链接。 - Dmitry Zaytsev
你找到解决方案了吗? - Shruti
很遗憾,Shruti,不行。 - Dmitry Zaytsev
2个回答

1
答案很简单,不要使用九宫格图片。
在xml布局文件中,不要将“android:scrollbarThumbVertical”定义为样式或主题,而是在ListView或ScrollView中定义,像这样:
<ListView
    android:id="@+id/listView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scrollbarAlwaysDrawVerticalTrack="true"
    android:scrollbarStyle="outsideOverlay"
    android:scrollbars="vertical"
    android:fadeScrollbars="true"
    **android:scrollbarThumbVertical="@drawable/scrollbar_vertical_thumb"**
    android:scrollbarTrackVertical="@drawable/scrollbar_vertical_track"
    android:scrollbarFadeDuration="500"
    android:scrollbarDefaultDelayBeforeFade="1000">
</ListView>

在"@drawable/scrollbar_vertical_thumb"处,编辑名为scrollbar_vertical_thumb的可绘制文件,将以下内容作为整个可绘制文件:

<?xml version="1.0" encoding="utf-8"?>
    <bitmap
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:src="@drawable/ic_launcher"
        android:gravity="center">
    </bitmap>

现在将显示在轨道上的缩略图实际上是您放置为源(src)的任何可绘制对象。在这种情况下,它是名为“ic_launcher”的基本绿色Android图标。到目前为止我发现唯一的限制是用作src的可绘制文件需要是.png文件。它不能是.xml文件。因此,明确一点,“ic_launcher”实际上是一个名为“ic_launcher.png”的文件。

0

你的滚动条拇指需要是一个9patch png。由于你不想让它拉伸,所以你不需要在边缘添加任何黑线,只需将其放入Draw 9-patch编辑器中并保存为.9.png即可。


不,它不起作用。而且也不应该。如果九宫格图片上没有“黑线”,那么它将始终被拉伸。无论如何,谢谢。 - Dmitry Zaytsev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接