DiscreteSeekBar使用简介,一个带气泡的SeekBar

android自带的SeekBar样式比较古板,如果我们想让自己的SeekBar炫起来,那么可以考虑使用DiscreteSeekBar。DiscreteSeekBar是GitHub上的一个开源控件,地址https://github.com/AnderWeb/discreteSeekBar,那么我们今天就来看看DiscreteSeekBar的使用。

先来看一张效果图:

上面那个红色的SeekBar就是android自带的SeekBar,下面的是DiscreteSeekBar,当我们拖动的时候,上面会有一个气泡实时显示当前值,我们一起来看看怎么做。

最近刚刚开始使用Android Studio,感觉还不错,所以这个Demo就用As来做了,我们首先要在build.gradle中添加依赖:

compile 'org.adw.library:discrete-seekbar:1.0.0'
下面我们看看上面这个东西的布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin">

    <SeekBar
        android:id="@+id/seekb2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="100dp"
        android:max="100" />

    <org.adw.library.widgets.discreteseekbar.DiscreteSeekBar
        android:id="@+id/seekb1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:dsb_indicatorColor="#05f75e"
        app:dsb_indicatorFormatter="百分之%03d"
        app:dsb_indicatorTextAppearance="?android:attr/textAppearanceSmall"
        app:dsb_progressColor="#999999"
        app:dsb_max="100"
        app:dsb_min="0"
        app:dsb_trackColor="#440be2"
        app:dsb_mirrorForRtl="false"
        app:dsb_rippleColor="#fc1307"
        app:dsb_value="20" />
</LinearLayout>
第一个SeekBar就是系统自带的SeekBar,第二个就是我们要说的DiscreteSeekBar,我们看看这里每个属性的含义:


dsb_indicatorColor表示气泡的颜色
dsb_progressColor表示SeekBar的颜色
dsb_trackColor表示进度条中那一条细线的颜色
dsb_rippleColor表示手指滑动地方的颜色

dsb_indicatorFormatter表示气泡中文字的显示格式,比如:

app:dsb_indicatorFormatter="百分之%03d"
会显示出“百分之XXX”,%d表示显示数值,0后面的3表示数字显示的位数

dsb_indicatorTextAppearance表示气泡中文本的显示样式

app:dsb_max="100"
app:dsb_min="0" 这两个分别表示DiscreteSeekBar的最大值和最小值

dsb_value表示DiscreteSeekBar的当前值...。

当然,上面这些属性我们也可以在Java代码中进行设置。

Demo下载http://download.csdn.net/detail/u012702547/9306151

   

posted @   江南一点雨  阅读(898)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示