动漫女孩小游戏,海盗鬼皮书,智能装修
拖动条和进度条非常相似,只是进度条采用颜色填充来表明进度完成的程度,而拖动条则通过滑块的位置来标识数值——而且拖动条允许用户拖动滑块来改变值,因此拖动条通常用于对系统的某种数值进行调节,比如调节音量等。
由于拖动条seekbar继承了progressbar,因此progressbar所支持的xml属性和方法完全适合用于seekbar。
seekbar允许用户改变拖动条的滑块外观,改变滑块外观通过如下属性来指定。
为了让程序能响应拖动条滑块位置的改变,程序可以考虑为它绑定一个onseekbarchangelistener监听器。
下面是通过拖动滑块改变图片的透明度实例
布局文件如下。
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <imageview android:id="@+id/image" android:layout_width="match_parent" android:layout_height="240dp" android:src="@drawable/lijiang"/> <!--定义一个拖动条,并改变它的滑块外观--> <seekbar android:id="@+id/seekbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:max="255" android:progress="255" android:thumb="@mipmap/ic_launcher"/> <!--定义一个拖动条,并改变它的刻度图标--> <seekbar android:id="@+id/seekbar2" android:layout_width="match_parent" android:layout_height="wrap_content" android:max="10" android:tickmark="@drawable/tickmark"/> </linearlayou>
主程序如下。
public class mainactivity extends appcompatactivity { @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); final imageview image = findviewbyid(r.id.image); seekbar seekbar = findviewbyid(r.id.seekbar); seekbar.setonseekbarchangelistener(new seekbar.onseekbarchangelistener() { @override public void onprogresschanged(seekbar seekbar, int progress, boolean fromuser) { //动态改变图片的透明度 image.setimagealpha(progress); } @override public void onstarttrackingtouch(seekbar seekbar) { } @override public void onstoptrackingtouch(seekbar seekbar) { } }); } }
上面红色字体代码是监听拖动条上滑块位置发生改变的关键代码,当滑块位置发生改变时,imageview的透明度将变为该拖动条的当前数值。运行程序如图。
改变拖动条后
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android studio 解决logcat无过滤工具栏的操作
Android Studio 恢复小窗口停靠模式(Docked Mode)
Android studio保存logcat日志到本地的操作
Android Studio快捷键生成TAG、Log.x日志输出介绍
网友评论