Google提供了SeekBar控件,可以非常方便的制作抽屉效果,但起初使用该控件还是碰到不少问题,因此记录如下:
其中两个属性比较重要:
progressDrawable: 表示SeekBar的背景色;thumb 表示滑动的图片。
有两点需要注意:
1、通常设置thumb后,滑动图片会被隐藏一部分。设置thumbOffset就可以解决该问题
android:thumbOffset="0dp"
2、需要修改滑动SeekBar过程中的填充颜色,需要建立一个drawable文件,
如名为seekbar_style.xml 具体代码如下?
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape>
<corners android:radius="10dip" />
<gradient android:startColor="#ffffffff"
android:centerColor="#ffffffff" android:endColor="#ffffffff"
android:centerY="0.45" android:angle="270" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="10dip" />
<gradient android:startColor="#FF75BC32"
android:centerColor="#FF75BC32" android:endColor="#FF75BC32"
android:centerY="0.45" android:angle="270" />
</shape>
</clip>
</item>
</layer-list>
background设置的是SeekBar的默认背景颜色; progress 设置的是滑动过程中填充的颜色。
4、设置滑动杆粗细,设置maxHeight和minHeight为同一值即可,如
android:maxHeight="4dp"
android:minHeight="4dp"
完整的SeekBar样式代码如下:
<SeekBar android:layout_marginLeft="25dp" android:thumb="@drawable/progress_bar_button" android:layout_width="327dp" android:layout_height="18dp" android:thumbOffset="0dp" android:maxHeight="4dp" android:minHeight="4dp" android:progressDrawable="@drawable/seekbar_style" android:id="@+id/seekBarVolume"></SeekBar>
效果图如下:
ImageButton设置图片方式,有以下三种:
setImageBitmap(Bitmap bm) setImageDrawable(Drawable drawable) setImageResource(int resId)
android:background="#00000000"即可
半透明
android:background="#7F000000"即可。