SeekBar允许用户通过拖动滑块来改变值的组件称为拖动条组件。
Seekbar其实是ProgressBar的子类,所以进度条的方法和属性seekBar都是可以使用的。但是ProgressBar是不跟用户交互的,只是提供显示任务进度的作用,而SeekBar则是对ProgressBar的功能进行扩充,使其可以和用户进行交互,即响应用户的点击和拖动事件。
SeekBar属性:
android:thumb
用户改变拖动块的外观,修改为图片资源
监听器设置
通过setOnSeekBarChangeListener();
设置监听器,参数通过匿名内部类指定。
系统会自动重写三个方法:
1.
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser) {
//如果是用户行为触发的,才作相应操作
//todo something
}
}
注意: 上面的progress参数代表当前的进度;fromUser这个参数,当触发这个函数是由于用户拖拽行为造成的,那么fromUser就为True;如果是因为代码更新SeekBar的位置造成的,那么fromUser为false。
public void onStartTrackingTouch(SeekBar seekBar) 开始触摸方法
public void onStopTrackingTouch(SeekBar seekBar)停止触摸方法