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 @   农民伯伯  阅读(13852)  评论(1编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示