听歌、看电影,快进或者退回某一时间或者调节音量大小,我们都会用到SeekBar拖动条,本章一起来了解一下用法。
为邵武等地区用户提供了全套网页设计制作服务,及邵武网站建设行业解决方案。主营业务为成都网站设计、做网站、邵武网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
一、设计界面
1、打开“res/layout/activity_main.xml”文件。
从工具栏向activity拖出1个按钮SeekBar、2个TextView。
2、打开activity_main.xml文件。
代码如下:
二、程序文件
打开“src/com.genwoxue.seekbar/MainActivity.java”文件。
然后输入以下代码:
import android.app.Activity; import android.os.Bundle; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; import android.widget.TextView; //注意同时从MainActivity类自Activity继承与实现OnSeekBarChangeListener接口 public class MainActivity extends Activity implements OnSeekBarChangeListener{ //声明变量 private SeekBar sbVolumer = null; private TextView tvinfo01 = null; private TextView tvinfo02 = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获得控件 sbVolumer = (SeekBar) findViewById(R.id.seekbar); sbVolumer.setOnSeekBarChangeListener(this); tvinfo01 = (TextView) findViewById(R.id.info01); tvinfo02 = (TextView) findViewById(R.id.info02); } //SeekBar数值改变事件 @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromTouch) { tvinfo01.setText("音量当前值:"+progress); } //SeekBar开始拖动事件 @Override public void onStartTrackingTouch(SeekBar arg0) { tvinfo02.setText("音量正在调节"); } //SeekBar停止拖动事件 @Override public void onStopTrackingTouch(SeekBar arg0) { tvinfo02.setText("音量停止调节"); } }
说明:了解seekbar的常见方法与属性。
(1)拖动条SeekBar的事件
由于拖动条可以被用户控制。所以需要对其进行事件监听,这就需要实现SeekBar.OnSeekBarChangeListener接口。此接口共需要监听三个事件,分别是:
数值改变(onProgressChanged)
开始拖动(onStartTrackingTouch)
停止拖动(onStopTrackingTouch)
(2)拖动条的主要属性和方法
setMax
设置拖动条的数值
setProgress
设置拖动条当前的数值
setSeconddaryProgress
设置第二拖动条的数值,即当前拖动条推荐的数值
三、运行效果