寻求酒吧,改变从黄色到白色的path颜色
我有两个问题:
1)如何将search栏(path)的颜色从黄色(默认颜色)更改为白色。 我的意思是说,当我滑动拇指时,它将线从灰色变成黄色。 我想轨道/线要么保持灰色或白色..基本上我想只是拇指移动在search栏没有颜色的变化。
2)如何将seekbar的大拇指从矩形改为圆形/球形/圆形。
任何指针将不胜感激。
我想从上面为新系统的人完成答案,
缺less的xmls(background_fill,progress_fill和progress可能看起来像一个渐变红色
progress.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:drawable="@drawable/background_fill" /> <item android:id="@android:id/progress"> <clip android:drawable="@drawable/progress_fill" /> </item> </layer-list>
background_fill.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#FF555555" android:centerColor="#FF555555" android:endColor="#FF555555" android:angle="90" /> <corners android:radius="5px" /> <stroke android:width="2dp" android:color="#50999999" /> <stroke android:width="1dp" android:color="#70555555" /> </shape>
progress_fill.xml
<?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#FF470000" android:centerColor="#FFB80000" android:endColor="#FFFF4400" android:angle="180" /> <corners android:radius="5px" /> <stroke android:width="2dp" android:color="#50999999" /> <stroke android:width="1dp" android:color="#70555555" /> </shape>
我没有完成android:thumb的实现,所以拇指仍然是原来的
因此,我们只需要从我们定义seekbar的布局xml中再次删除这一行
android:thumb="@drawable/thumb"
祝你好运!!!
您应该设置SeekBar XML属性:
<SeekBar .... android:progressDrawable="@drawable/progress" android:thumb="@drawable/thumb" .... />
哪里进步是这样的:
<?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:drawable="@drawable/background_fill" /> <item android:id="@android:id/progress"> <clip android:drawable="@drawable/progress_fill" /> </item> </layer-list>
和拇指是
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/thumb_fill" /> </selector>
由于默认情况下SeekBar
使用了colorAccent
,所以可以使用自定义颜色创build一个新的样式作为colorAccent
然后使用theme
属性将其应用于SeekBar。
<SeekBar> . . android:theme="@style/MySeekBarTheme" . </SeekBar>
在@style中:
<style name="MySeekBarTheme" parent="Widget.AppCompat.SeekBar" > <item name="colorAccent">#ffff00</item> </style>
seekBar.getProgressDrawable().setColorFilter(Color.RED, PorterDuff.Mode.SRC_IN); seekBar.getThumb().setColorFilter(Color.RED, PorterDuff.Mode.SRC_IN);
您可以添加API级别21的色调。
将这些属性添加到seekbar元素中:
android:progressTint =“@ android:color / white” android:thumbTint =“@ android:color / white”
最后结果:
<SeekBar android:id="@+id/is" android:layout_width="match_parent" android:max="100" android:progressTint="@android:color/white" android:thumbTint="@android:color/white"/>