Android 中SeekBar拖动条控件的基本用法

简介: Android 中SeekBar拖动条控件的基本用法

效果展示:

SeekBar简介:

Android的基本UI控件中的拖动条

实现步骤:

activity_seek_bar.xml代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".SeekBarActivity"
    android:orientation="vertical"
    >
    <SeekBar
        android:id="@+id/seek_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:max="100"
        android:thumb="@drawable/seekbar_point"
        />
    <TextView
        android:id="@+id/tv_seek_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="当前进度为"
        android:gravity="center"
        android:textSize="17sp"
        android:textColor="@color/black"
        />
</LinearLayout>

SeekBar中的两个属性:

android:thumb=“@drawable/seekbar_point” 自定义滑块的样式

android:max=“100” 滑动条的最大值

SeekBarActivity代码如下:

public class SeekBarActivity extends AppCompatActivity implements SeekBar.OnSeekBarChangeListener {
    private SeekBar seek_bar;
    private TextView tv_seek_bar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_seek_bar);
        seek_bar = findViewById(R.id.seek_bar);
        tv_seek_bar = findViewById(R.id.tv_seek_bar);
        //给拖动条设置拖动变更监听器
        seek_bar.setOnSeekBarChangeListener(this);
        //设置拖动条的当前进度
        seek_bar.setProgress(50);
    }
    //在进度变更时触发。第三个参数为true表示用户拖动,为false表示代码设置进度
    @Override
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
        String desc = "当前进度为:" + seekBar.getProgress() + ",最大进度为" + seekBar.getMax();
        tv_seek_bar.setText(desc);
    }
    //在开始拖动进度时触发
    @Override
    public void onStartTrackingTouch(SeekBar seekBar) {
    }
    //在停止拖动进度时触发
    @Override
    public void onStopTrackingTouch(SeekBar seekBar) {
    }
}

通过setOnSeekBarChangeListener(OnSeekBarChangeListener)的回调方法实现SeekBar的拖动变更事件。具体注释已经在代码中给出!


目录
相关文章
|
22天前
|
XML Java Android开发
Android控件之基础控件——进度条类的view——TextView、Checkbox复选控件、RadioButton单选控件、ToggleButton开关、SeekBar拖动条、menu、弹窗
Android控件之基础控件——进度条类的view——TextView、Checkbox复选控件、RadioButton单选控件、ToggleButton开关、SeekBar拖动条、menu、弹窗
|
22天前
|
XML 编解码 Java
Android控件之高级控件——ListView、cardView、屏幕适配
Android控件之高级控件——ListView、cardView、屏幕适配
|
22天前
|
Android开发
Android控件——Checkbox复选框、RadioButton单选、ToggleButton开关、SeekBar拖动条
Android控件——Checkbox复选框、RadioButton单选、ToggleButton开关、SeekBar拖动条
|
22天前
|
XML Java Android开发
Android之UI基础控件
Android之UI基础控件
|
2月前
|
Android开发
[Android]RadioButton控件
[Android]RadioButton控件
13 0
|
3月前
|
Java Android开发 数据安全/隐私保护
安卓逆向 -- IDA基本用法
安卓逆向 -- IDA基本用法
42 0
|
4月前
|
Android开发
分享88个Android控件源代码总有一个是你想要的
分享88个Android控件源代码总有一个是你想要的
23 0
|
4月前
|
Android开发
分享89个Android控件源代码总有一个是你想要的
分享89个Android控件源代码总有一个是你想要的
77 0
|
7天前
|
消息中间件 网络协议 Java
Android 开发中实现数据传递:广播和Handler
Android 开发中实现数据传递:广播和Handler
13 1