在我的应用程序中,我有一个搜索栏,它应该有两种状态——专注和正常
也不是为了进度可绘制,我已经像这样在 xml 中设置了普通图像 -
<SeekBar
android:id="@+id/bar"
android:layout_width="315dp"
android:layout_height="10dp"
android:layout_marginLeft="114dp"
android:layout_marginTop="210dp"
android:max="60"
android:progressDrawable="@drawable/bar_normal"
android:thumb="@null" />
这是我用于进度可绘制的 xml
bar_normal.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/black"/>
<item android:id="@android:id/secondaryProgress">
<clip android:drawable="@drawable/black" />
</item>
<item android:id="@android:id/progress">
<clip android:drawable="@drawable/grey" />
</item>
</layer-list>
现在,当用户触摸此搜索栏时,我想将可绘制的进度更改为橙色
为此,我使用另一个 xml,在我的代码中我这样写
seekBar.setProgressDrawable(getResources().getDrawable(R.drawable.bar_focused));
bar_focused.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/black"/>
<item android:id="@android:id/secondaryProgress">
<clip android:drawable="@drawable/black" />
</item>
<item android:id="@android:id/progress">
<clip android:drawable="@drawable/orange" />
</item>
</layer-list>
最初,该条看起来很好,进度条以灰色和背景显示,二次进度条以黑色显示,但是当我触摸搜索条使其变为橙色时,整个条形变为黑色。它的工作仍然很好,但我看不到橙色。