首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在使用fastScrollEnabled时显示自定义拇指

如何在使用fastScrollEnabled时显示自定义拇指
EN

Stack Overflow用户
提问于 2011-08-15 04:54:31
回答 1查看 3.8K关注 0票数 7

我有一个非字母顺序的国家列表视图,并开始使用快速滚动。我希望在使用fastscroll滚动时显示国家旗帜,但API似乎将FastScroll类设置为私有,因此我无法覆盖它。

还有没有其他人实现了自定义的快速滚动视图?

参考资料:http://developer.android.com/reference/android/widget/AbsListView.html#attr_android:fastScrollEnabled

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-18 19:21:09

在ListView XML定义中,添加

代码语言:javascript
复制
android:fastScrollEnabled="true"

或者在代码中

代码语言:javascript
复制
listView.setFastScrollEnabled(true);

在res/drawable文件夹中创建文件fastscroll_thumb.xml,如下所示:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:drawable="@drawable/fastscroll_pressed" />
    <item android:drawable="@drawable/fastscroll" />
</selector>

在AndroidManifest.xml中,为应用程序设置自定义主题:

代码语言:javascript
复制
<application
    android:theme="@style/ApplicationTheme"
    ...>

在res文件夹中创建一个values文件夹。在res/value中创建themes.xml文件,如下所示:

代码语言:javascript
复制
<resources>
    <style name="ApplicationTheme">
        <item name="android:fastScrollThumbDrawable">@drawable/fastscroll_thumb</item>
    </style>
</resources>

最后,确保可绘制文件夹中存在fastscroll.png和fastscroll_pressed.png

(可选)如果愿意,还可以在调试时将快速滚动设置为始终可见

代码语言:javascript
复制
listView.setFastScrollAlwaysVisible(true);

或者在XML中

代码语言:javascript
复制
android:fastScrollAlwaysVisible="true"
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7059648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档