方法一

1. 需求:需要改变其默认颜色,样式

2.滑竿样式

seekbar.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background" android:height="5dp">
<shape>
<corners android:radius="5dp"/>
<solid android:color="#C9C7C7"/> <!-- 颜色-->
</shape>
</item> <item android:id="@android:id/secondaryProgress" android:height="5dp">
<clip>
<shape>
<corners android:radius="5dp"/>
<solid android:color="#C9C7C7"/> <!-- 颜色-->
</shape>
</clip>
</item> <item android:id="@android:id/progress" android:height="5dp">
<clip>
<shape>
<corners android:radius="5dp"/>
<solid android:color="@color/colorPrimary"/> <!-- 颜色-->
</shape>
</clip>
</item>
</layer-list>

3. 滑块样式

select_seekbar.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/shape1"/> <!-- 有焦点状态 -->
<item android:state_focused="true" android:drawable="@drawable/shape"/> <!-- 普通状态 -->
<item android:drawable="@drawable/shape" />
</selector>

shape.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval"
android:useLevel="false">
<solid android:color="@color/colorPrimary"></solid> <!-- 颜色-->
<size
android:width="12dp"
android:height="12dp"></size>
</shape>

shap1.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval"
android:useLevel="false">
<solid android:color="@color/colorAccent"></solid> <!-- 颜色-->
<size
android:width="14dp"
android:height="14dp"></size>
</shape>

4.布局引用

<SeekBar
android:id="@+id/seekbar"
android:layout_width="368dp"
android:maxHeight="6dip"
android:minHeight="6dip"
android:layout_height="40dp"
android:max="100"
android:progressDrawable="@drawable/seekbar"
android:thumb="@drawable/select_seekbar"
android:progress="30" /> <!--maxHeight
minHeight可以控制滑竿粗线-- >

方法二

5.不利用xml,直接修改

 public void setSeekBarColor(SeekBar seekBar, int color){
LayerDrawable layerDrawable = (LayerDrawable)
seekBar.getProgressDrawable();
Drawable dra=layerDrawable.getDrawable();
dra.setColorFilter(color, PorterDuff.Mode.SRC);
Drawable dra2=seekBar.getThumb();
seekBar.getThumb().setColorFilter(color, PorterDuff.Mode.SRC_ATOP);
seekBar.invalidate();
}

6.效果图

二 实现seekbar颜色渐变

1. 效果

    <SeekBar
android:id="@+id/vSeekBarECHO"
android:layout_width="@dimen/dp_160"
android:layout_height="wrap_content"
android:maxHeight="@dimen/dp_13"
android:minHeight="@dimen/dp_13"
android:translationX="@dimen/dp_m_51"
android:rotation="270"
android:translationY="@dimen/dp_70"
android:paddingStart="0dp"
android:saveEnabled="false"
android:progressDrawable="@drawable/seekbar_progress_color"
android:splitTrack="false"
android:thumb="@drawable/icon_seek_block_25"
android:thumbOffset="0dp" />

seekbar_progress_color.xml

<?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>
<stroke android:width="@dimen/dp_1" android:color="#E5E5E5"/>
<corners android:radius="@dimen/dp_5" />
<!-- android:endColor="#FBFBFB"
android:centerColor="#9E9D9D"
android:startColor="#626060"-->
<solid android:color="#FAFAFA"/> <gradient
android:angle="0"
android:endColor="#FBFBFB"
android:centerColor="#FBFBFB"
android:startColor="#FBFBFB" /> </shape>
</item> <!-- 第二进度条的背景色 -->
<item android:id="@android:id/secondaryProgress">
<clip>
<shape android:shape="rectangle">
<solid android:color="@color/colorSingerName" />
</shape>
</clip>
</item> <!-- <item android:id="@+android:id/background" android:drawable="@drawable/bar_dn" /> -->
<!-- 可拖动的进度条颜色 -->
<item android:id="@android:id/progress">
<clip>
<shape>
<stroke android:width="@dimen/dp_1" android:color="#E5E5E5"/>
<corners android:radius="@dimen/dp_5" />
<gradient
android:angle="0"
android:centerColor="@color/colorSeekBarPro50"
android:endColor="@color/colorSeekBarPro100"
android:startColor="@color/colorSeekBarPro0" />
</shape>
</clip>
</item> </layer-list>

icon_seek_block_25

动态修改SeekBar的颜色的更多相关文章

  1. 动态修改svg的颜色,svg做背景色时候修改颜色

    svg修改背景色可以使用fill属性来修改,但是我现在需要动态改变svg的颜色,例如我hover的时候 现在发现一种兼容性还不错的方法是css属性mask 类似于给路径填充上颜色,结合backgrou ...

  2. iOS 动态修改导航栏颜色 UINavigationBar

    示例 所谓动态修改  意思是 在当前页面滚动的过程中 亦或 是在 触发返回事件\进入一个新的页面  导航栏的动态变化 由于系统级别的navBar 高度集成  很多自己想实现的功能 很不好弄 如果是通过 ...

  3. uniapp-uni.setNavigationBarColor 动态修改顶部背景颜色

    uni.setNavigationBarColor({ frontColor: '#ffffff', backgroundColor: "#3583ff" })

  4. 【VS开发】VS2010 MFC中控件、对话框等背景颜色动态修改的方法

    [VS开发]VS2010 MFC中控件.对话框等背景颜色动态修改的方法 标签(空格分隔):[VS开发] 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明: ...

  5. ReactNative 根据scrollView/listview滑动距离动态修改NavBar颜色

    我们常见某些APP上滑的时候,NavBar颜色会从透明渐变为某种颜色 原理非常简单,根据scrollView的回调动态修改NavBar的透明度即可. 在RN中,尤其是ListView中这个回调不是很好 ...

  6. Unity3D代码动态修改材质球的颜色

    代码动态修改材质球的颜色: gameObject.GetComponent<Renderer>().material.color=Color.red;//当材质球的Shader为标准时,可 ...

  7. echarts系列之动态修改柱状图颜色

    echarts根据某一变量动态修改柱状图颜色 1.option中参数配置项series { "name":"Android", "type" ...

  8. Android动态修改图片颜色的实现方式分析

    版权声明:本文为博主原创文章,未经博主允许不得转载. 1.修改色相.饱和度.亮度 参看:http://blog.csdn.NET/sjf0115/article/details/7267063 2.使 ...

  9. 动态修改UINavigationBar的背景色

    这是我们最终想要得到的效果: 思路 在UISrollView的delegate方法 1  - (void)scrollViewDidScroll:(UIScrollView *)scrollView ...

随机推荐

  1. STL编程:C++的忠告!

    Copy别人的,有少量修改,可以做为一下参考! C++之父Bjarne Stroustrup 写的 The C++ Programming Language (Special Edition) 中各章 ...

  2. 超实用的JavaScript代码段

    1. 判断日期是否有效 JavaScript中自带的日期函数还是太过简单,很难满足真实项目中对不同日期格式进行解析和判断的需要.JQuery也有一些第三方库来使日期相关的处理变得简单,但有时你可能只需 ...

  3. ajax发送请求是图标转圈圈实现

    css部分 .load-img{ //控制图标大小width:40px;height:40px;margin:100px;border-radius:50%;-webkit-animation:cir ...

  4. SQL表查询

    CREATE TABLE student( Sno ) NOT NULL PRIMARY KEY, Sname ) NOT NULL, Ssex ) NOT NULL, Sbirthday DATET ...

  5. ToDoList(原生JS)了解一下

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. 沃通SSL证书、代码签名证书应用于机器人安全防护

    近两年,扫地机器人.智能音箱等消费级机器人产品逐渐走入大众生活的中.随着人工智能技术的迅猛发展,预计2023年全球消费级机器人市场规模将达到150亿美元.然而,产业的迅猛发展却伴随着安全防护的缺失,安 ...

  7. 算法46----移除K位数字

    一.题目:移除K位数字 给定一个以字符串表示的非负整数 num,移除这个数中的 k 位数字,使得剩下的数字最小. 注意: num 的长度小于 10002 且 ≥ k. num 不会包含任何前导零. 示 ...

  8. UVALive-8138 Number Generator 概率dp+优化

    题目链接:https://cn.vjudge.net/problem/UVALive-8138 题意 有一个随机数生成器,输出1-n的整数. 现在已经输出了k个数,问再取几个数才能使取出的所有数的个数 ...

  9. HDU1079-Calendar Game 简单思维博弈··

    题意:给你1990,1.1----2001.11.4范围内的某一天,格式year month day  两人轮流操作: 1. day+1; 2.month + 1: 谁先达到2001.11.4号,谁获 ...

  10. [LUOGU]P4098[HEOI2013]ALO

    BZOJ上的权限题,流下了贫穷的泪水... 可持久化trie的题. 一开始zz了,看错了题,以为是要把所有的宝石缩起来,后来仔细一看好像只缩一次...昨天刷了一晚上的语文病句题白做了... 这样的话就 ...