Progressbar、SeekBar进度条,滚动条

来源:互联网 发布:Mac打开hosts文件 编辑:程序博客网 时间:2024/05/16 02:09


在我们开发视频项目时,通常播放视频时有 进度条和加载时的滚动条,我们则需要自己自定义这种功能。


通常我们都是通过xml的格式进行改写的



progress_layer_list.xml

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@android:id/background"
        android:drawable="@drawable/progress_bg_mycoursestyle"/>
    <item android:id="@android:id/secondaryProgress">
        <scale android:scaleWidth="100%" android:drawable="@drawable/progress_secondary_mycoursestyle"/>
    </item>
    <item android:id="@android:id/progress">
        <scale android:scaleWidth="100%" android:drawable="@drawable/progress_primary_mycoursestyle"/>
    </item>
</layer-list>

通过这个progress_layer_list.xml格式,在 Progressbar的属性 

<ProgressBar
        android:id="@+id/bar2"
        style="@android:style/Widget.ProgressBar.Horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/bar"
        android:progressDrawable="@drawable/progress_layer_list" />

引用就可以了。


Seekbar的seekbar_bar.xml和seek_bar_selector.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="#ff000000" android:endColor="#ff808A87"  
                android:centerY="0.45" android:angle="270" />  
        </shape>  
  </item>  
  
    <item android:id="@android:id/progress">  
        <clip>  
            <shape>  
                <corners android:radius="10dip" />  
                <gradient android:startColor="#ffffffff"  
                    android:centerColor="#FF6347" android:endColor="#FF0000"  
                    android:centerY="0.45" android:angle="270" />  
            </shape>  
        </clip>  
    </item>  
</layer-list>



<selector xmlns:android="http://schemas.android.com/apk/res/android" >
        <!-- 按下状态 -->   
    <item      
        android:state_pressed="true"   
        android:drawable="@drawable/download_seekbar_bg"     
        />     
               
    <!-- 普通无焦点状态 -->   
    <item      
        android:state_focused="false"      
        android:state_pressed="false"    
        android:drawable="@drawable/download_seekbar_bg"  
    />  



</selector>

  在seekbar的属性中,android:background="@drawable/seek_bar"
                android:thumb="@drawable/seek_bar_seletor"
这两个属性就行了。



0 0
原创粉丝点击