SeekBar是ProgressBar的子类,可以在进度条上进行拖动。设置setOnSeekBarChangeListener 来监听拖动事件。需要实现三个方法。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout ly = new LinearLayout(this) ;
ly.setOrientation(LinearLayout.VERTICAL) ;
Button btn = new Button(this) ;
final SeekBar sb1 = new SeekBar(this,null,android.R.attr.seekBarStyle) ;
btn.setText("Start") ;
final TextView m_tv1 = new TextView(this) ;
ly.addView(btn) ;
ly.addView(sb1) ;
ly.addView(m_tv1) ;
setContentView(ly);
sb1.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
public void onStopTrackingTouch(SeekBar seekBar) {
m_tv1.setText(m_tv1.getText().toString() + "stop" + sb1.getProgress()) ;
}
public void onStartTrackingTouch(SeekBar seekBar) {
m_tv1.setText(m_tv1.getText().toString() + "start" + sb1.getProgress()) ;
}
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
m_tv1.setText(m_tv1.getText().toString() + "changed" + sb1.getProgress()) ;
}
}) ;
btn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
m_tv1.setText("" + sb1.getProgress()) ;
}
}) ;
}