您的位置:首页 > 移动开发 > Android开发

android 自定义SeekBar(拖动条)

2014-02-18 09:19 489 查看
要做一个视频播放器,界面需要自己定义,在做拖动条的时候,很难看。所以就上网找资料并且进行调试。

网上很多资料,但是可能别人的能调好,但是自己照搬不一定能调出跟网上资料一样的效果。

所以,自定义SeekBar最重要的就是设置背景以及android:minHeight跟android:maxHeight属性,也可以加上android:thumbOffset。

我的SeekBar背景大小为579*10(两张图片,背景:seekbar_n.png,拖动之后图片:seekbar_p.png),拖动块大小为18*18(seekbar_point.png).代码如下:

1、创建seekbar的拖动块风格文件(seekbar_point_style.xml)

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@drawable/video_n"
android:state_selected="false"
android:state_pressed="false"/>
<item
android:drawable="@drawable/video_p"
android:state_selected="false"
android:state_pressed="true"/>
</selector>


2、创建seekbar的风格文件(seekbar_style.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/seekbar_n"
/>
<item
android:id="@android:id/progress"
android:drawable="@drawable/seekbar_p"/>
<item
android:id="@android:id/secondaryProgress"
android:drawable="@drawable/seekbar_n"/>
</layer-list>


3、定义seekbar

<SeekBar
android:id="@+id/seekbar"
android:layout_width="579dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="100dp"
android:progressDrawable="@drawable/seekbar_style"
android:minHeight="10dp"
android:maxHeight="10dp"
android:thumbOffset="1.0dp"
android:thumb="@drawable/seekbar_point_style" />


至此,seekbar已经完成,编译运行,一个漂亮的seekbar展现在眼前
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: