Android开源DiscreteSeekbar:动画气泡指示当前滑动值

简介: Android开源DiscreteSeekbar:动画气泡指示当前滑动值Android本身提供的SeekBar用以调控值以及回调传回当前选择的值。


Android开源DiscreteSeekbar:动画气泡指示当前滑动值

Android本身提供的SeekBar用以调控值以及回调传回当前选择的值。但Android原生的SeekBar表现力不太丰富,在github上有一个开源的第三方DiscreteSeekbar,增强了Android原生的Android Seekbar的表现力,DiscreteSeekbar在github上的项目主页是:https://github.com/AnderWeb/discreteSeekBar

当用户的手指拖动DiscreteSeekbar的滑块时候会自动弹出气泡跟随滑动提示当前的值。

使用DiscreteSeekbar首先需要写布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <org.adw.library.widgets.discreteseekbar.DiscreteSeekBar
        android:id="@+id/discrete1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="50dip"
        app:dsb_max="10"
        app:dsb_min="-5"
        app:dsb_value="-1" />

    <org.adw.library.widgets.discreteseekbar.DiscreteSeekBar
        android:id="@+id/discrete2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="50dip"
        app:dsb_allowTrackClickToDrag="false"
        app:dsb_indicatorColor="@color/my_floater_color"
        app:dsb_indicatorFormatter="值 %d"
        app:dsb_indicatorTextAppearance="@style/CustomFloaterTextAppearance"
        app:dsb_progressColor="@color/my_progress_color"
        app:dsb_rippleColor="#FF7788FF" />

    <org.adw.library.widgets.discreteseekbar.DiscreteSeekBar
        android:id="@+id/discrete3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="50dip"
        app:dsb_indicatorFormatter="%04d"
        app:dsb_max="1000"
        app:dsb_min="1" />

</LinearLayout>

DiscreteSeekbar一些常用的属性定义:
app:dsb_max:最大值
app:dsb_min:最小值
app:dsb_value:当前值
app:dsb_indicatorFormatter:定义在弹出的动画气泡中显示的样式,比如,app:dsb_indicatorFormatter="值 %d"表示显示出来的值形如:值 37。

DiscreteSeekbar可以自定制的属性很多,可以在其github的项目主页上查看。DiscreteSeekbar可以像Android 原生的Seekbar一样使用。


Java代码:

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

import org.adw.library.widgets.discreteseekbar.DiscreteSeekBar;
import org.adw.library.widgets.discreteseekbar.DiscreteSeekBar.OnProgressChangeListener;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        setContentView(R.layout.activity_main);
        
        DiscreteSeekBar discreteSeekBar1 = (DiscreteSeekBar) findViewById(R.id.discrete1);
        discreteSeekBar1.setNumericTransformer(new DiscreteSeekBar.NumericTransformer() {
            @Override
            public int transform(int value) {
                return value * 100;
            }
        });
        
        DiscreteSeekBar discreteSeekBar2 = (DiscreteSeekBar) findViewById(R.id.discrete2);
        discreteSeekBar2.setOnProgressChangeListener(new OnProgressChangeListener(){

			@Override
			public void onProgressChanged(DiscreteSeekBar seekBar, int value, boolean fromUser) {
				Log.d("当前值", value+"");
			}

			@Override
			public void onStartTrackingTouch(DiscreteSeekBar seekBar) {
				
			}

			@Override
			public void onStopTrackingTouch(DiscreteSeekBar seekBar) {
				
			}});
    }
}


运行结果如图:

相关文章
|
7月前
|
存储 Shell Android开发
基于Android P,自定义Android开机动画的方法
本文详细介绍了基于Android P系统自定义开机动画的步骤,包括动画文件结构、脚本编写、ZIP打包方法以及如何将自定义动画集成到AOSP源码中。
156 2
基于Android P,自定义Android开机动画的方法
|
5月前
|
Android开发 UED
Android 中加载 Gif 动画
【10月更文挑战第20天】加载 Gif 动画是 Android 开发中的一项重要技能。通过使用第三方库或自定义实现,可以方便地在应用中展示生动的 Gif 动画。在实际应用中,需要根据具体情况进行合理选择和优化,以确保用户体验和性能的平衡。可以通过不断的实践和探索,进一步掌握在 Android 中加载 Gif 动画的技巧和方法,为开发高质量的 Android 应用提供支持。
|
7月前
|
监控 Java API
Android经典实战之OkDownload:一个经典强大的文件下载开源库,支持断点续传
本文介绍的 OkDownload 是一个专为 Android 设计的开源下载框架,支持多线程下载、断点续传和任务队列管理等功能,具备可靠性、灵活性和高性能特点。它提供了多种配置选项和监听器,便于开发者集成和扩展。尽管已多年未更新,但依然适用于大多数文件下载需求。
544 1
|
7月前
|
Android开发
Android使用ViewPager做无限轮播,人为滑动时停止
Android使用ViewPager做无限轮播,人为滑动时停止
116 2
|
8月前
|
XML Android开发 数据格式
Android 中如何设置activity的启动动画,让它像dialog一样从底部往上出来
在 Android 中实现 Activity 的对话框式过渡动画:从底部滑入与从顶部滑出。需定义两个 XML 动画文件 `activity_slide_in.xml` 和 `activity_slide_out.xml`,分别控制 Activity 的进入与退出动画。使用 `overridePendingTransition` 方法在启动 (`startActivity`) 或结束 (`finish`) Activity 时应用这些动画。为了使前 Activity 保持静止,可定义 `no_animation.xml` 并在启动新 Activity 时仅设置新 Activity 的进入动画。
248 12
|
9月前
|
Android开发 UED
Android Item平移动画
【6月更文挑战第18天】
145 8
|
8月前
|
XML Android开发 UED
Android动画之共享元素动画简单实践
本文介绍Android共享元素动画, 实现两Activity间平滑过渡特定UI元素。通过设置`transitionName`属性和使用`ActivityOptions.makeSceneTransitionAnimation`启动目标Activity实现动画效果。可自定义过渡动画提升体验。
116 0
|
8月前
|
Android开发
Android仿高德首页三段式滑动
Android仿高德首页三段式滑动
200 0
|
8月前
|
Android开发
android 动画 插值器和估值器
android 动画 插值器和估值器

热门文章

最新文章

  • 1
    Android历史版本与APK文件结构
  • 2
    【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
  • 3
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
  • 4
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
  • 5
    【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
  • 6
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
  • 7
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
  • 8
    escrcpy:【技术党必看】Android开发,Escrcpy 让你无线投屏新体验!图形界面掌控 Android,30-120fps 超流畅!🔥
  • 9
    Android实战经验之Kotlin中快速实现MVI架构
  • 10
    即时通讯安全篇(一):正确地理解和使用Android端加密算法