seekbar的简单使用

来源:互联网 发布:殷叶子演过的网络剧 编辑:程序博客网 时间:2024/06/10 04:44
<SeekBar    android:id="@+id/seekBar"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:layout_gravity="center_vertical"    android:max="100"    android:progressBackgroundTint="#7F7F7F"    android:progressTint="#7F7F7F"    android:thumb="@drawable/seekbar_thumb"/>

这里写图片描述
其中progressBackgroundTint和progressTint 为seekabr的进度条的完成的颜色和未完成的颜色,也可以用图片;
thumb为进度条上的图片。

seekbar_thumb 这里全部用一样的

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

接下来说说这个和seekbar有关的界面的布局的实现
这里写图片描述
下面为水平的seekbar
之所以自定义MySeekBar,是为了禁止seekbar的拖动

 <LinearLayout            android:id="@+id/ll_pro"            android:padding="10dp"            android:layout_width="match_parent"            android:layout_height="wrap_content"            android:layout_alignParentBottom="true"            android:layout_alignParentLeft="true"            android:layout_alignParentStart="true"            android:orientation="horizontal">            <FrameLayout                android:layout_gravity="center_vertical"                android:layout_width="wrap_content"                android:layout_height="wrap_content">                <ImageView                    android:id="@+id/iv_go_play"                    android:layout_width="45dp"                    android:layout_height="45dp"                    android:layout_gravity="center_vertical"                    android:src="@mipmap/icon_paly"/>                <ImageView                    android:id="@+id/iv_go_pause"                    android:layout_width="45dp"                    android:layout_height="45dp"                    android:layout_gravity="center_vertical"                    android:src="@mipmap/icon_pause"                    android:visibility="gone"/>            </FrameLayout>            <com.xw.vehicle.mgr.ui.track.MySeekBar                android:id="@+id/seekBar"                android:layout_width="match_parent"                android:layout_height="wrap_content"                android:layout_gravity="center_vertical"                android:max="100"                android:progressBackgroundTint="#7F7F7F"                android:progressTint="#7F7F7F"                android:thumb="@drawable/seekbar_thumb"/>        </LinearLayout>

MySeekBar :

public class MySeekBar extends SeekBar {    public MySeekBar(Context context) {        super(context);    }    public MySeekBar(Context context, AttributeSet attrs) {        this(context, attrs, android.R.attr.seekBarStyle);    }    public MySeekBar(Context context, AttributeSet attrs, int defStyle) {        super(context, attrs, defStyle);    }    /**     * 重写onTouchEvent方法 禁止拖动     *     */    @Override    public boolean onTouchEvent(MotionEvent event) {        //return super.onTouchEvent(event);        return false ;    }}

垂直的seekbar
主要就是把 LinearLayout 旋转90度就可以了

<LinearLayout    android:layout_width="wrap_content"    android:layout_height="40dp"    android:layout_alignParentRight="true"    android:layout_centerVertical="true"    android:orientation="horizontal"    android:padding="5dp"    android:rotation="90"    android:translationX="90dp">    <TextView        android:id="@+id/run_speed"        android:layout_width="30dp"        android:layout_height="wrap_content"        android:layout_gravity="center_vertical"        android:layout_marginRight="2dp"        android:gravity="center"        android:rotation="-90"        android:text="1.0x"        android:textColor="@color/gray_33"        android:textSize="12sp" />    <SeekBar        android:id="@+id/verticalSeekBar"        android:layout_width="200dp"        android:layout_height="wrap_content"        android:layout_gravity="center_vertical"        android:max="90"        android:progressBackgroundTint="@color/black"        android:progressTint="@color/black"        android:thumb="@drawable/seekbar_thumb"        android:visibility="visible" />    <TextView        android:layout_width="30dp"        android:layout_height="wrap_content"        android:layout_gravity="center_vertical"        android:layout_marginLeft="2dp"        android:gravity="center"        android:rotation="-90"        android:text="10.0x"        android:textColor="@color/gray_33"        android:textSize="12sp" /></LinearLayout>

以上。

0 0
原创粉丝点击