`
Jsaint
  • 浏览: 13741 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

SeekBar 粗略小节

阅读更多
滑片控件,图像主要由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和竖向seekbar

    SeekBar是Android开发中常用的控件,主要用于用户进行数值选择或者进度调整,它提供了一个滑动条,用户可以通过拖动滑块来改变数值或进度。在标准的Android SDK中,SeekBar默认是横向的,但有时我们可能需要一个竖向...

    自定义竖向SeekBar,横向SeekBar样式

    在Android开发中,SeekBar是一个非常常用的控件,用于让用户进行连续的值选择,例如调节音量或亮度。在默认情况下,SeekBar是水平显示的,但有时我们可能需要根据设计需求来定制它的显示方式,比如变为垂直 SeekBar...

    android SeekBar 竖向

    在Android开发中,SeekBar是一个非常常用的控件,它允许用户通过滑动来选择一个介于最小值和最大值之间的数值。通常,SeekBar是水平布局的,但有时开发者可能需要创建一个竖向的SeekBar以适应特定的界面设计或用户...

    Android 使用SeekBar时动态显示进度且随SeekBar一起移动

    在Android开发中,SeekBar是一个非常常用的控件,它允许用户通过滑动来选择一个介于最小值和最大值之间的数值。这个控件通常用于音量调节、亮度设置或者进度条展示等场景。本篇文章将详细讲解如何在Android应用中...

    Android自定义圆形SeekBar

    在Android开发中,SeekBar是一个非常常见的控件,用于让用户通过滑动来选择一个介于最小值和最大值之间的值。然而,系统默认的SeekBar是矩形的,有时为了追求更美观或者符合特定设计需求,开发者可能希望对其进行...

    android自定义垂直seekbar

    在Android开发中,SeekBar是一种常用的用户界面组件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的数值。默认情况下,SeekBar是水平排列的,但有时为了满足特定的设计需求,我们可能需要创建一个垂直...

    Seekbar thumb 居中显示的Demo

    在Android开发中,SeekBar是一个非常常见的控件,用于展示进度并允许用户进行滑动调整。在许多应用中,我们希望Seekbar的滑块(thumb)能够居中显示当前的进度,以便用户更直观地了解进度状态。"Seekbar thumb 居中...

    android实例竖着的seekbar

    在Android开发中,SeekBar是一种常用的用户界面组件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的数值。通常情况下,SeekBar是水平排列的,但有时根据设计需求,我们可能需要创建一个垂直方向的SeekBar...

    seekbar 动态移动带百分比TextView

    ### seekbar 动态移动带百分比TextView:深入解析与实现 在Android开发中,`SeekBar` 是一个非常常见的UI组件,它允许用户通过滑动来选择一个值,通常用于音量控制、亮度调节等场景。然而,为了提供更直观的用户...

    seekbar设置进度条的颜色

    在Android开发中,SeekBar是一个非常常见的控件,用于创建用户可调节的滑动条,通常用来展示进度或者选择一个数值范围。本篇文章将详细讲解如何自定义SeekBar的颜色,以达到更好的视觉效果和用户体验。 首先,我们...

    seekbar显示进度文字

    SeekBar 是 Android 系统中一个非常常用的控件,它用于显示进度条,通常在音频、视频播放或者设置参数时可见。在这个主题中,“seekbar显示进度文字”指的是如何在 SeekBar 上显示当前的进度值,让用户更直观地了解...

    Android自定义SeekBar滑动条

    在Android开发中,SeekBar是一个非常常见的控件,用于实现用户通过滑动来选择一个介于最小值和最大值之间的数值。通常,它被用来调节音量、亮度或者进度等。本篇文章将深入探讨如何在Android中自定义SeekBar,以满足...

    android 自定义Seekbar,包括图片,背景颜色

    在Android开发中,Seekbar是一种常用的控件,用于让用户选择一个介于最小值和最大值之间的数值。在标准的Seekbar基础上进行自定义,可以增强界面的美观性和用户体验。本教程将详细介绍如何在Android中自定义Seekbar...

    自定义实现两个滑块的SeekBar

    在Android开发中,SeekBar是一个非常常见的控件,用于让用户通过滑动来选择一个数值或进度。在标准的Android SDK中,SeekBar的外观和行为是预设的,但开发者可以根据需求进行自定义,以提供更个性化的用户体验。在这...

    Android自定义View三滑块SeekBar

    本篇文章将深入探讨如何实现一个自定义的三滑块SeekBar,该SeekBar能够灵活地调整滑块数量,并且支持动态设置滑块的值。 首先,我们来理解SeekBar的基本概念。SeekBar是Android系统提供的一个UI组件,它允许用户...

    Android双向seekbar(带刻度)

    在Android开发中,Seekbar是一种常见的用户界面组件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的值。然而,标准的Seekbar只有一个方向的滑动,即从最小值向最大值。在某些场景下,如调节音量、压力等...

    简单的SeekBar实例

    在Android开发中,SeekBar是一个非常常用的控件,它允许用户通过滑动来选择一个介于最小值和最大值之间的值。在"简单的SeekBar实例"这个项目中,开发者自定义了一个SeekBar,增强了其功能和视觉效果,使其能显示实时...

    自定义seekBar以及使用seekbar实现类似控制音量的效果

    在Android开发中,SeekBar是一个非常常用的控件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的值。在这个自定义 SeekBar 的案例中,我们不仅会了解 SeekBar 的基本用法,还会深入探讨如何进行自定义以...

    Thumb带数字的SeekBar

    【SeekBar控件详解】 在Android开发中,SeekBar是一种常见的用户交互控件,它允许用户通过滑动条选择一个介于最小值和最大值之间的值。`Thumb`是SeekBa上的可拖动小圆点,代表当前选取的进度。在标题提到的"Thumb带...

    SeekBar进度条

    SeekBar是Android开发中常见的一种UI控件,它通常用于用户交互,允许用户通过滑动来调节某个值的进度或选择。在Android应用设计中,SeekBar被广泛应用于音量控制、亮度调节、时间选择等多种场景。下面我们将深入探讨...

Global site tag (gtag.js) - Google Analytics