我想为我的应用Seekbar
创建一个样式。我只是想改变拇指和酒吧本身的颜色。
我设法改变了这样的拇指名称:
<style name="MySeekBar" parent="@style/Widget.AppCompat.SeekBar">
<item name="android:thumbTint"> @color/turquoise </item>
</style>
但我不确定如何更改条形图的颜色。我知道如何使用代码,但不是在xml:
seekBar.getProgressDrawable().setColorFilter(getContext().getResources().getColor(R.color.turquoise), Mode.SRC_ATOP);
如何使用xml中定义的样式设置滤色器的样式?
答案 0 :(得分:3)
您可以使用
android:progressTint
更改搜索栏的进度部分的颜色和
android:progressBackgroundTint
以您的风格更改条形背景的颜色
答案 1 :(得分:0)
将android:color
atributtes替换为您喜欢的颜色。
<强> background.xml 强>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line">
<stroke android:width="1dp" android:color="#D9D9D9"/>
<corners android:radius="1dp" />
</shape>
<强> progress.xml 强>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line">
<stroke android:width="1dp" android:color="#2EA5DE"/>
<corners android:radius="1dp" />
</shape>
<强> style.xml 强>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@android:id/background"
android:drawable="@drawable/seekbar_background"/>
<item android:id="@android:id/progress">
<clip android:drawable="@drawable/seekbar_progress" />
</item>
</layer-list>
或使用您的SEEKBAR主题如下
由于SeekBar
默认使用colorAccent
,您可以使用自定义颜色colorAccent
创建新样式,然后使用theme
属性将其应用于SeekBar。< / p>
<SeekBar>
.
.
android:theme="@style/MySeekBar"
.
</SeekBar>
@style中的:
<style name="MySeekBar" parent="@style/Widget.AppCompat.SeekBar" >
<item name="colorAccent">#ffff00</item>
</style>