滑片控件,图像主要由4个部分组成 background、progessDrawable、secondProgressDrawable以及thumb
基本属性在.xml文件中可以定义
<SeekBar android:id="@+id/seek"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:max="100"
android:progress="50"
android:secondaryProgress="75" />
在.java中 可以通过通过以下函数进行需要的操作
mSeekBar = (SeekBar)findViewById(R.id.seek);
mSeekBar.setOnSeekBarChangeListener(this);
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromTouch) { //当thumb移动时
}
public void onStartTrackingTouch(SeekBar seekBar) { //当thumb刚开始移动
}
public void onStopTrackingTouch(SeekBar seekBar) { //当thumb结束移动
mTrackingText.setText(getString(R.string.seekbar_tracking_off));
}
当自定义图片文件时可以通过.xml文件进行设置
android:thumb="@drawable/thumb"
android:progressDrawable="@drawable/progress"
在@drawable/thumb.xml中,设置thumb在不同状态下加载的图片或是不同状态唯一图片,则不需写新建thumb.xml直接加载图片即可
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@drawable/thumb_pressed"/>
<item
android:state_focused="false"
android:state_pressed="false"
android:drawable="@drawable/thumb_normal"/>
</selector>
在@drawable/progressDrawable.xml中,设置background以及progress图像
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape>
<corners android:radius="5dip" />
<gradient
android:startColor="#ff9d9e9d"
android:centerColor="#ff5a5d5a"
android:centerY="0.75"
android:endColor="#ff747674"
android:angle="270"
/>
</shape>
</item>
<item android:id="@android:id/secondaryProgress">
<clip>
<shape>
<corners android:radius="5dip" />
<gradient
android:startColor="#80ffd300"
android:centerColor="#80ffb600"
android:centerY="0.75"
android:endColor="#a0ffcb00"
android:angle="270"
/>
</shape>
</clip>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="5dip" />
<gradient
android:startColor="#ffffd300"
android:centerColor="#ffffb600"
android:centerY="0.75"
android:endColor="#ffffcb00"
android:angle="270"
/>
</shape>
</clip>
</item>
</layer-list>
android:drawable="@drawable/progress_mediumbacon" 也可以通过简单加载图片的方式
过程中有一些小的问题:
1.加载.9文件 <nine-patch android:src="@drawable/progress"/>
2.自定子图像时,调整progress的高度时 thumb无法中心对齐,高度通过设置最大最小高度来调整
<SeekBar android:maxHeight = "5dip"
android:minHight="5dip"
3.加载thumb图片过大,在移动到最左端或是最右端时,可能出现被切效果,需要通过设置thumbOffset来调节
<SeekBar android:thumbOffset ="7dip"
分享到:
相关推荐
SeekBar是Android开发中常用的控件,主要用于用户进行数值选择或者进度调整,它提供了一个滑动条,用户可以通过拖动滑块来改变数值或进度。在标准的Android SDK中,SeekBar默认是横向的,但有时我们可能需要一个竖向...
在Android开发中,SeekBar是一个非常常用的控件,用于让用户进行连续的值选择,例如调节音量或亮度。在默认情况下,SeekBar是水平显示的,但有时我们可能需要根据设计需求来定制它的显示方式,比如变为垂直 SeekBar...
在Android开发中,SeekBar是一个非常常用的控件,它允许用户通过滑动来选择一个介于最小值和最大值之间的数值。通常,SeekBar是水平布局的,但有时开发者可能需要创建一个竖向的SeekBar以适应特定的界面设计或用户...
在Android开发中,SeekBar是一个非常常用的控件,它允许用户通过滑动来选择一个介于最小值和最大值之间的数值。这个控件通常用于音量调节、亮度设置或者进度条展示等场景。本篇文章将详细讲解如何在Android应用中...
在Android开发中,SeekBar是一个非常常见的控件,用于让用户通过滑动来选择一个介于最小值和最大值之间的值。然而,系统默认的SeekBar是矩形的,有时为了追求更美观或者符合特定设计需求,开发者可能希望对其进行...
在Android开发中,SeekBar是一种常用的用户界面组件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的数值。默认情况下,SeekBar是水平排列的,但有时为了满足特定的设计需求,我们可能需要创建一个垂直...
在Android开发中,SeekBar是一个非常常见的控件,用于展示进度并允许用户进行滑动调整。在许多应用中,我们希望Seekbar的滑块(thumb)能够居中显示当前的进度,以便用户更直观地了解进度状态。"Seekbar thumb 居中...
在Android开发中,SeekBar是一种常用的用户界面组件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的数值。通常情况下,SeekBar是水平排列的,但有时根据设计需求,我们可能需要创建一个垂直方向的SeekBar...
### seekbar 动态移动带百分比TextView:深入解析与实现 在Android开发中,`SeekBar` 是一个非常常见的UI组件,它允许用户通过滑动来选择一个值,通常用于音量控制、亮度调节等场景。然而,为了提供更直观的用户...
在Android开发中,SeekBar是一个非常常见的控件,用于创建用户可调节的滑动条,通常用来展示进度或者选择一个数值范围。本篇文章将详细讲解如何自定义SeekBar的颜色,以达到更好的视觉效果和用户体验。 首先,我们...
SeekBar 是 Android 系统中一个非常常用的控件,它用于显示进度条,通常在音频、视频播放或者设置参数时可见。在这个主题中,“seekbar显示进度文字”指的是如何在 SeekBar 上显示当前的进度值,让用户更直观地了解...
在Android开发中,SeekBar是一个非常常见的控件,用于实现用户通过滑动来选择一个介于最小值和最大值之间的数值。通常,它被用来调节音量、亮度或者进度等。本篇文章将深入探讨如何在Android中自定义SeekBar,以满足...
在Android开发中,Seekbar是一种常用的控件,用于让用户选择一个介于最小值和最大值之间的数值。在标准的Seekbar基础上进行自定义,可以增强界面的美观性和用户体验。本教程将详细介绍如何在Android中自定义Seekbar...
在Android开发中,SeekBar是一个非常常见的控件,用于让用户通过滑动来选择一个数值或进度。在标准的Android SDK中,SeekBar的外观和行为是预设的,但开发者可以根据需求进行自定义,以提供更个性化的用户体验。在这...
在Android开发中,Seekbar是一种常见的用户界面组件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的值。然而,标准的Seekbar只有一个方向的滑动,即从最小值向最大值。在某些场景下,如调节音量、压力等...
本篇文章将深入探讨如何实现一个自定义的三滑块SeekBar,该SeekBar能够灵活地调整滑块数量,并且支持动态设置滑块的值。 首先,我们来理解SeekBar的基本概念。SeekBar是Android系统提供的一个UI组件,它允许用户...
在Android开发中,SeekBar是一个非常常用的控件,它允许用户通过滑动来选择一个介于最小值和最大值之间的值。在"简单的SeekBar实例"这个项目中,开发者自定义了一个SeekBar,增强了其功能和视觉效果,使其能显示实时...
在Android开发中,SeekBar是一个非常常用的控件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的值。在这个自定义 SeekBar 的案例中,我们不仅会了解 SeekBar 的基本用法,还会深入探讨如何进行自定义以...
【SeekBar控件详解】 在Android开发中,SeekBar是一种常见的用户交互控件,它允许用户通过滑动条选择一个介于最小值和最大值之间的值。`Thumb`是SeekBa上的可拖动小圆点,代表当前选取的进度。在标题提到的"Thumb带...
SeekBar是Android开发中常见的一种UI控件,它通常用于用户交互,允许用户通过滑动来调节某个值的进度或选择。在Android应用设计中,SeekBar被广泛应用于音量控制、亮度调节、时间选择等多种场景。下面我们将深入探讨...