自定义搜索栏进度颜色逐渐消失
custom seekbar progress color fades away
我正在尝试制作一个自定义搜索栏,它具有用于显示进度的 ceratin 颜色。我使用 xml 中定义的图层列表进行了尝试。当我 运行 代码时,进度的颜色逐渐消失。
<SeekBar
android:id="@+id/load_money_seekbar"
android:layout_marginTop="@dimen/margin_5dp"
android:paddingLeft="@dimen/padding_5"
android:paddingRight="@dimen/padding_5"
android:paddingTop="@dimen/padding_10"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerHorizontal="true"
android:indeterminate="false"
android:splitTrack="false"
android:thumb="@drawable/load_money_arrow"
android:max="100"
android:progressDrawable="@drawable/seekbar_loadmoney">
seekbar_loadmoney.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 android:shape="line">
<stroke
android:width="2dp"
android:color="#bbbbbb" />
</shape>
</item>
<item android:id="@android:id/secondaryProgress">
<shape android:shape="line">
<stroke
android:width="2dp"
android:color="#bbbbbb" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape android:shape="line">
<stroke
android:width="2dp"
android:color="#213D8D" />
</shape>
</clip>
</item>
</layer-list>
请参考屏幕截图
经过大量研究,我得到了答案。我希望以编程方式显示搜索栏的进度,并且用户无法更改搜索栏的进度。所以我这样做了
seekbar.setEnabled(false)
这使得搜索栏中进度的颜色逐渐消失。我们可以通过下面的代码实现同样的事情,而不需要让 seekbar 的进度条颜色变淡。
seekbar.setOnTouchListener(new View.OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
return true;
}
});
我正在尝试制作一个自定义搜索栏,它具有用于显示进度的 ceratin 颜色。我使用 xml 中定义的图层列表进行了尝试。当我 运行 代码时,进度的颜色逐渐消失。
<SeekBar
android:id="@+id/load_money_seekbar"
android:layout_marginTop="@dimen/margin_5dp"
android:paddingLeft="@dimen/padding_5"
android:paddingRight="@dimen/padding_5"
android:paddingTop="@dimen/padding_10"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerHorizontal="true"
android:indeterminate="false"
android:splitTrack="false"
android:thumb="@drawable/load_money_arrow"
android:max="100"
android:progressDrawable="@drawable/seekbar_loadmoney">
seekbar_loadmoney.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 android:shape="line">
<stroke
android:width="2dp"
android:color="#bbbbbb" />
</shape>
</item>
<item android:id="@android:id/secondaryProgress">
<shape android:shape="line">
<stroke
android:width="2dp"
android:color="#bbbbbb" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape android:shape="line">
<stroke
android:width="2dp"
android:color="#213D8D" />
</shape>
</clip>
</item>
</layer-list>
请参考屏幕截图
经过大量研究,我得到了答案。我希望以编程方式显示搜索栏的进度,并且用户无法更改搜索栏的进度。所以我这样做了
seekbar.setEnabled(false)
这使得搜索栏中进度的颜色逐渐消失。我们可以通过下面的代码实现同样的事情,而不需要让 seekbar 的进度条颜色变淡。
seekbar.setOnTouchListener(new View.OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
return true;
}
});