Android练习-----拖动条(SeekBar)
来源:互联网 发布:冰箱什么牌子好 知乎 编辑:程序博客网 时间:2024/05/21 14:48
拖动条与进度条类似,不同的是,拖动条允许用户拖动滑块来改变值,通常用于实现对某种数值的调节。如调亮屏幕亮度或音量大小。
在屏幕中添加拖动条,可以在 XML 布局文件中通过 < SeekBar > 标记来添加,其基本语法格式如下:
<SeekBar android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/seekBar"/>
SeekBar 控件允许用户改变拖动滑块的外观,这里可以使用 android:thumb 属性实现,该属性的属性值为一个 Drawable 对象,该对象将作为自定义滑块。
在Android Stdio 中创建一个 Android 项目,名称为 Ch06_03 来实现一个滑块拖动条的实例。
(1)在项目的 res/layout 目录下修改 activity_main.xml 文件,将布局改为线性布局,方向为垂直,并添加两个文本框控件和一个拖动条控件,代码入下:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView01" /> <SeekBar android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/seekBar"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView02"/></LinearLayout>
(2)在 MainActivity.java 文件中,首先获取到两个文本框控件和拖动条控件,然后为拖动条控件添加 OnSeekBarChangeListener 监听器,将拖动条的动态和位置在文本框控件中显示出来,其主要代码如下:
import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.widget.SeekBar;import android.widget.TextView;public class MainActivity extends AppCompatActivity { private SeekBar seekBar; private TextView textView01; private TextView textView02; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); seekBar = (SeekBar) findViewById(R.id.seekBar); textView01 = (TextView) findViewById(R.id.textView01); textView02 = (TextView) findViewById(R.id.textView02); seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int i, boolean b) {//位置改变 textView01.setText("正在滑动"); textView02.setText("当前值为:" + i); //将文本框的值修改为拖动条当前的位置 } @Override public void onStartTrackingTouch(SeekBar seekBar) {//开始滑动 textView01.setText("开始滑动"); } @Override public void onStopTrackingTouch(SeekBar seekBar) {//停止滑动 textView01.setText("结束滑动"); } }); }}
在上述代码中,先获取到拖动条控件,然后为其添加监听器,监听对拖动条控件的操作。在监听器中的 OnStartTrackingTouch(SeekBar seekbar) 方法开始滑动拖动条时调用,onStopTrackingTouch(SeekBar seekBar) 方法在结束滑动拖动条时调用,onProgressChanged(SeekBar seekBar, int i, boolean b) 方法在滑块位置改变时调用。其中 i 参数表示当前进度,也就是拖动条的值。在滑动滑块时调用相应的方法,通过改变文本框控件的值,显示对拖动条的操作。
运行该项目
滑块滑动时效果图
停止滑动滑块时效果图
- Android练习-----拖动条(SeekBar)
- android 拖动条 SeekBar
- Android SeekBar拖动条
- android 拖动条(SeekBar)
- android SeekBar 拖动条
- Android:拖动条SeekBar
- Android SeekBar拖动条
- Android SeekBar(拖动条)
- android---拖动条(SeekBar)
- android 自定义SeekBar(拖动条)
- android 控件 拖动条(SeekBar)
- android 垂直拖动条seekbar
- Android---31---SeekBar拖动条
- Android SeekBar 拖动条 滑动条
- Android组件 拖动条(SeekBar)
- Android UI设计 SeekBar拖动条用法
- Android组件 拖动条(SeekBar)
- Android开发之拖动条(SeekBar)
- selenium之 一个不常用但又很有用的方法(switch_to.active_element),获取当前焦点元素
- 线程安全问题
- pandas contact 之后,一定要记得用reset_index去处理index,不然容易出现莫名的逻辑错误
- [HTML/CSS]布局学习笔记-侧边栏的弹出,回到顶部
- 死锁
- Android练习-----拖动条(SeekBar)
- 法线转换
- centos 联合编译动态连接库
- 高级语言的运行机制
- 自定义线程 生产者消费者 join方法
- nw-tcp部分的 bug修改经验
- Http请求方式和响应 协议的格式
- 解决ajax跨域访问获取数据返回json的方法
- 集合