Android 中文 API (26) —— SeekBar


前言

  本章内容是android.widget.SeekBar,译为滑动条,翻译来自madgoat,欢迎大家访问他的博客:http://madgoat.cn ,再次感谢 madgoat !期待你一起参与Android API 的中文翻译,联系我over140@gmail.com。

 

声明

  欢迎转载,但请保留文章原始出处:)

    博客园:http://www.cnblogs.com/

    Android中文翻译组:http://www.cnblogs.com/over140/  

 

正文

  一、结构

    public class SeekBar extends AbsSeekBar

 

    java.lang.Object

      android.view.View

        android.widget.ProgressBar

                            android.widget.AbsSeekBar

                                     android.widget.SeekBar

 

 

  二、概述

    

    SeekBarProgressBar的扩展,在其基础上增加了一个可拖动的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  文章链接

      在android里做一个竖着的seekbar

      Android UI设计 SeekBar拖动条用法

 

    6.2  示例代码

      6.2.1  java文件

public class SeekBarDemo extends Activity {
    @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文件

<?xml version="1.0" encoding="utf-8"?>
<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的辛苦劳动!

 

 

posted @ 2010-11-03 18:58  农民伯伯  阅读(13844)  评论(1编辑  收藏  举报