拖动进度条SeekBar

QuibblerQuibbler 2020-01-10 约 3 分钟 1066 次阅读

拖动进度条SeekBar

以前用到的ProgressBar都是显示给用户看的,用户不能操作。像视频进度条、音量控制条都是可以给用户操作,根据用户设定的值再操作。Android提供了这样的控件SeekBar。

1、布局添加

SeekBar的用法很简单,先看布局文件:

<SeekBar
        android:id="@+id/seekbar"
        android:layout_width="match_parent"
        android:layout_height="20dp
        android:thumb="@drawable/seeck"
        android:thumbOffset="20dp"
        android:thumbTintMode="src_in" />

2、代码设置

给SeekBar对象添加一个SeekBar.OnSeekBarChangeListener监听器:

seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
                //拖动过程中,实时获取progress值
            }
            
            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {
                //开始拖动时,在这里获取起始progress值
            }
            
            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
                //停止拖动时,在这里获取最终progress值
            }
        });

效果:

还可以通过设置drawable资源,美化SeekBar样式。更多设置参考博客,这里不再详述。

参考博客:

        《安卓开发个性化seekbar设置》

        《Seekbar总结》

相关推荐

WilliamChart:轻量美观的 Android 图表库实战
精选开源

WilliamChart:轻量美观的 Android 图表库实战

WilliamChart:轻量美观的 Android 图表库实战数据可视化是运动、健康、金融、统计类 App 的刚需。MPAndroidChart 功能最全但偏重复杂,WilliamChart 走的则是"轻量 + 美观 + Kotlin 原生"路线——v3 用 Kotlin 完全重写,API 极简,一行 chart.animate(dataSet) 就能把数据画成带动画的折线/柱状/环形图,开箱即

175