Android 中文 API (26) —— SeekBar
前言
本章内容是android.widget.SeekBar,译为滑动条,翻译来自madgoat,欢迎大家访问他的博客:http://madgoat.cn ,再次感谢 madgoat !期待你一起参与Android API 的中文翻译,联系我over140@gmail.com。
声明
欢迎转载,但请保留文章原始出处:)
Android中文翻译组:http://www.cnblogs.com/over140/
正文
一、结构
public class SeekBar extends AbsSeekBar
java.lang.Object
android.widget.ProgressBar
android.widget.AbsSeekBar
android.widget.SeekBar
二、概述
SeekBar是ProgressBar的扩展,在其基础上增加了一个可拖动的thumb(注:就是那个可拖动的图标)。用户可以触摸thumb并向左或向右拖动,再或者可以使用方向键都可以设置当前的进度等级。不建议把可以获取焦点的widget放在SeekBar的左边或右边。
SeekBar可以附加一个SeekBar.OnSeekBarChangeListener以获得用户操作的通知。
三、内部类
接口 SeekBar.OnSeekBarChangeListener
一个回调函数用来当进度等级发生改变时通知客户端
四、XML属性
属性名称 | 描述 |
android:thumb | Seekbar上绘制的thumb(可拖动的那个图标) |
五、公共方法
public void setOnSeekBarChangeListener (SeekBar.OnSeekBarChangeListener l)
设置一个监听器以接受seekbar进度改变时的通知。同时提供用户在SeekBar上开始和停止触摸手势时的通知。
参数
l SeekBar的通知监听对象
参见
SeekBar.OnSeekBarChangeListener
六、补充
6.1 文章链接
6.2 示例代码
6.2.1 java文件
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.seekbardemo);
final SeekBar seekBar1 = (SeekBar) this.findViewById(R.id.seekBar1);
seekBar1.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
Toast.makeText(SeekBarDemo.this,
String.valueOf(seekBar1.getProgress()),
Toast.LENGTH_SHORT).show();
}
});
}
}
6.2.1 xml文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
>
<SeekBar android:id="@+id/seekBar1" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:max="100"
></SeekBar>
</LinearLayout>
结束
再次感谢madgoat的辛苦劳动!