android SeekBar

概述

SeekBar,拖動(dòng)條。主要的要點(diǎn)是自定義的樣式,拖動(dòng)條的值,拖動(dòng)條值改變的監(jiān)聽(tīng)器等等。


1.SeekBar的重要的屬性

style="@android:style/Widget.SeekBar"指定樣式
android:max="200"最大值為200,默認(rèn)是100
android:progress="100"指定當(dāng)前的值為100
android:thumb設(shè)置滑動(dòng)塊的樣式
android:progressDrawable設(shè)置進(jìn)度條的圖片


progress值改變的監(jiān)聽(tīng)器:

seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
                textView.setText("Value:"+ Integer.toString( progress ) );
            }

            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {
                Log.e("------------","開(kāi)始滑動(dòng)!");
            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
                Log.e("------------","停止滑動(dòng)!");
            }
        });

2.先看看系統(tǒng)提供的樣式:

普通版的
style="@android:style/Widget.SeekBar"

2016-04-20_072525.png

Holo版
style="@android:style/Widget.Holo.SeekBar"

2016-04-20_072655.png

DeviceDefault
style="@android:style/Widget.DeviceDefault.SeekBar"

2016-04-20_072815.png

Material
style="@android:style/Widget.Material.SeekBar"

2016-04-20_073252.png

3.自定義

1)滑塊的自定義

<!-- This is the thumb on the seek bar. -->  
<selector xmlns:android="http://schemas.android.com/apk/res/android">  
   
     <item android:state_pressed="true"  
           android:state_window_focused="true"  
           android:drawable="@drawable/seek_thumb_pressed" />  
   
     <item android:state_focused="true"  
           android:state_window_focused="true"  
           android:drawable="@drawable/seek_thumb_selected" />  
   
     <item android:state_selected="true"  
          android:state_window_focused="true"  
          android:drawable="@drawable/seek_thumb_selected" />  
 
    <item android:drawable="@drawable/seek_thumb_normal" />  
</selector>  

它定義的是seekbar的滑塊樣式,內(nèi)容很簡(jiǎn)單,大家應(yīng)該看得懂,分別對(duì)應(yīng)著按下,選中,以及獲得焦點(diǎn)時(shí)滑塊的圖片,這個(gè)是源碼的,大家照葫蘆畫(huà)瓢就好了。

<?xml version="1.0" encoding="UTF-8"?>  
<selector xmlns:android="http://schemas.android.com/apk/res/android">  
   <!-- 按下?tīng)顟B(tài) -->  
<item android:state_pressed="true" android:drawable="@drawable/bg3" />  
   
     <!-- 普通無(wú)焦點(diǎn)狀態(tài) -->  
     <item android:state_focused="false"    android:state_pressed="false"  
         android:drawable="@drawable/bg4" />  
</selector>  

2)進(jìn)度條自定義

<style name="Widget.Material.SeekBar">
        <item name="indeterminateOnly">false</item>
        <item name="progressDrawable">@drawable/seekbar_track_material</item>
        <item name="indeterminateDrawable">@drawable/seekbar_track_material</item>
        <item name="thumb">@drawable/seekbar_thumb_material_anim</item>
        <item name="splitTrack">true</item>
        <item name="useDisabledAlpha">false</item>
        <item name="focusable">true</item>
        <item name="paddingStart">16dip</item>
        <item name="paddingEnd">16dip</item>
        <item name="mirrorForRtl">true</item>
        <item name="background">@drawable/control_background_32dp_material</item>
    </style>

當(dāng)然,thumb可以直接使用屬性標(biāo)簽:android:thumb去指定,
這里的style是自定義了很多東西,上面的這個(gè)是系統(tǒng)的 Material 效果的風(fēng)格xml,有

  • progressDrawable 效果,就是進(jìn)度條的樣式
  • indeterminateDrawable 設(shè)置繪制不顯示進(jìn)度的進(jìn)度條的Drawable對(duì)象
  • indeterminateOnly 是否不顯示進(jìn)度條,true,不顯示
  • thumb 滑動(dòng)塊樣式
  • background 背景

4.Over

所以呢,xml繪圖很重要哈哈,有木有?

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

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

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,872評(píng)論 25 709
  • afinalAfinal是一個(gè)android的ioc,orm框架 https://github.com/yangf...
    passiontim閱讀 15,842評(píng)論 2 45
  • ¥開(kāi)啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開(kāi)一個(gè)線程,因...
    小菜c閱讀 7,311評(píng)論 0 17
  • 奔四了!每次看到關(guān)于夜華的視頻,點(diǎn)進(jìn)去反復(fù)觀看時(shí),我下意識(shí)的反應(yīng)是:我已經(jīng)奔四了!還在幻想著夜華!這是??!...
    想飛的洛神閱讀 298評(píng)論 0 0
  • 如果你看到這些,你把他人的精彩做為未來(lái)你的目標(biāo)和追求,那麼,恭喜你,我相信你的未來(lái)一定可以出彩!反之,如果你看到他...
    風(fēng)云看世界閱讀 287評(píng)論 0 0

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