用九补片图像Android的搜索栏设置自定义样式 [英] Android seekbar set custom style using nine-patch images
问题描述
我想创建一个自定义风格的搜索栏。 我有两个九片图像之一是灰色拉伸杆search_progress.9.png(背景颜色),而另一个是一个绿色的拉伸杆search_progress_bar.9.png(前景颜色)。
I am trying to create a custom-styled seekbar. I have two nine-patch images one is a gray stretching bar search_progress.9.png (background color) and the other is a green stretching bar search_progress_bar.9.png (foreground color).
我用这个XML作为我的搜索栏的progressDrawable:
I use this xml as my seekbar's progressDrawable:
<?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/search_progress"></item>
<item android:id="@android:id/progress" android:drawable="@drawable/search_progress_bar"></item>
</layer-list>
我的问题是,不是吧填补了我的拇指位置,整个酒吧是绿色的所有的时间(search_progress_bar图像)。我怎样才能获得相同的效果Android的progress_horizontal.xml与我自己的照片(我不想用形状来画我吧)?
My problem is that, instead of the bar filling up to my thumb position, the entire bar is green all the time (search_progress_bar image). How can I get the same effect as Android's progress_horizontal.xml with my own images (I do not want to use shapes to draw my bar)?
推荐答案
我解决了使用ClipDrawable这个问题。 这是为我工作:
I solved this problem using a ClipDrawable. This is what worked for me:
设置@绘制/ search_progress_drawable作为progressDrawable。
Set @drawable/search_progress_drawable as the progressDrawable.
search_progress_drawable.xml:
search_progress_drawable.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/search_progress"></item>
<item android:id="@android:id/progress" android:drawable="@drawable/search_progress_clip"></item>
</layer-list>
search_progress_clip.xml:
search_progress_clip.xml:
<?xml version="1.0" encoding="utf-8"?>
<clip xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/search_progress_bar"
android:clipOrientation="horizontal"
android:gravity="left">
</clip>
这篇关于用九补片图像Android的搜索栏设置自定义样式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!