style: 设置style为水平样式,其他样式可以自己尝试。
// 将onClick() 改为
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.button_1:
// 获取当前进度值,每次点击进度值+10
int progress = progressBar.getProgress();
progressBar.setProgress(progress + 10);
default: break;
}
}
6.SeekBar(滑动条)
6.1 基本样式
<SeekBar android:id="@+id/seek_bar" android:layout_width="match_parent" android:layout_height="wrap_content" android:max="100" android:progress="50" /> <TextView android:id="@+id/text" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" />
max: 滑动条的最大值,设置为 100
progress: 初始化滑动条的值,设置为 50
6.2 注册滑动监听器
public class MainActivity extends Activity {
private TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView) findViewById(R.id.text);
SeekBar seekBar = (SeekBar) findViewById(R.id.seek_bar);
// 设置滑动监听器,复写三个事件函数,分别是值改变、开始滑动、结束滑动
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if(fromUser){
// 用户主动滑动,值改变时触发该事件
textView.setText("用户正在滑动,当前值:" + progress);
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
Log.d("MainActivity","开始滑动时触发该事件");
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
Log.d("MainActivity","结束滑动时触发该事件");
}
});
}
}










