SeekBar的樣式及使用

不怕跌倒,所以飛翔

現(xiàn)在很多短視頻都會用到seekBar去調(diào)節(jié)視頻進度,所以seekBar很有必要學(xué)習(xí)一下

本文的主要知識點有:

  • 自定義seekBar的樣式;
  • seekBar的簡單使用。

關(guān)于seekBar的樣式

系統(tǒng)提供的樣式實在是太丑了,所以一般使用seekBar的時候都會自定義樣式的,關(guān)于seekBar的自定義樣式,其實就是設(shè)置一個DrawableseekBar中去,設(shè)置之后效果還是可以得,所以我們下面就開始擼代碼吧!

1.首先就是在布局文件中設(shè)置SeekBar的xml

 <SeekBar
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:maxHeight="3dp"
        android:minHeight="3dp"
        android:progressDrawable="@drawable/seekbar_bg"
        android:thumb="@drawable/seekbar_thumb_bg"/>

這里說明幾點:

  • maxHeight和minHeight 這個屬性如果不進行設(shè)置的話拖動條會很寬很寬的,著實難看;
  • progressDrawable就是進度條的顏色設(shè)置,后面我會把具體寫法貼出來的;
  • thumb是設(shè)置焦點和按下等一些操作使拖動按鈕改變的

2.seekbar的背景設(shè)置也就是上面的seekbar_bg

<?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>
            <solid android:color="#ff51495e"/>
        </shape>
    </item>

    <item android:id="@android:id/secondaryProgress">
        <clip>
            <shape>
                <solid android:color="#f9062a"/>
            </shape>
        </clip>
    </item>

    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <solid android:color="#2db334"/>
            </shape>
        </clip>
    </item>

</layer-list>

上面就是設(shè)置三層顏色的,其中background是底色,secondaryProgress是緩沖的顏色,progress是當前進度的顏色

3.設(shè)置thumb(也就是設(shè)置拖動時、獲取焦點等拖動塊的顏色)就是上面themb對應(yīng)的seekbar_thumb_bg

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <!--獲取焦點和沒有按下的時候-->
    <item android:drawable="@drawable/seekbar_thumb_normal" android:state_focused="true" android:state_pressed="false"/>
    <!--獲取焦點但按下的時候-->
    <item android:drawable="@drawable/seekbar_thumb_pressed" android:state_focused="true" android:state_pressed="true"/>
    <!--沒有獲取焦點按下的時候-->
    <item android:drawable="@drawable/seekbar_thumb_pressed" android:state_focused="false" android:state_pressed="true"/>
    <!--默認的時候-->
    <item android:drawable="@drawable/seekbar_thumb_normal"/>

</selector>
seekbar_thumb_normal.png
seekbar_thumb_pressed.png

基本上就這些東西了,別覺得我顏色配的丑,我只是覺得這樣明顯一些哈哈!

關(guān)于seekBar的使用

其實作為android的這個空間,沒有什么主要的,就是一個監(jiān)聽和幾個設(shè)置進度的方法

1.常用方法

  • setProgress(int value) 設(shè)置滑塊的位置
  • setMax(int value) 設(shè)置進度條的最大長度
  • setOnSeekBarChangeListener(OnSeekBarCHangeListener l) 設(shè)置SeekBar的進度改變事件
  • onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) 這個主要是監(jiān)聽進度改變的,這里的progress就是當前的進度,這個fromUser我也沒弄懂是什么意思,還請知道的大神說一下!
  • onStartTrackingTouch(SeekBar seekBar) 這個是監(jiān)聽開始拖動滾動條時的操作
  • onStopTrackingTouch(SeekBar seekBar) 停止拖動滾動條的操作
  • setSecondaryProgress(int secondaryProgress) 設(shè)置緩沖的進度

別的還真不知道寫什么了,以后有什么不知道的在往上面添加吧!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 7,295評論 0 17
  • 本人初學(xué)Android,最近做了一個實現(xiàn)安卓簡單音樂播放功能的播放器,收獲不少,于是便記錄下來自己的思路與知識總結(jié)...
    落日柳風(fēng)閱讀 19,437評論 2 41
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,038評論 4 61
  • 手機qq里面發(fā)送小視頻有個功能是,分段錄制視頻,就是錄制的時候,可以停下來,然后再接著錄。這個功能目前被我們的項目...
    毛神閱讀 911評論 0 4
  • 2015, 給自己買了一份禮物, 如題, 就是一臺 Mac.興奮之余, 又有點措手不及.畢竟跟 Linux 還是有...
    Floyda閱讀 2,477評論 9 8

友情鏈接更多精彩內(nèi)容