自定义进度条和RatingBar评分控件

来源:互联网 发布:淘宝直通车首次充值 编辑:程序博客网 时间:2024/06/05 14:10

1、自定义进度条需要用到的主要方法

android:progressDrawable=""    ,后面所接内容需要自定义一个drawable的<layer-list >项目

<?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/progress">             <!-- 此处设置的为一级进度,若要设置二级进度只需仿照再加一项即可 -->
        <clip>  
            <shape>  
                <solid android:color="#ff996dfe" />                <!-- 此处也可用图片来代替  -->
            </shape>  
        </clip>  
    </item>  
</layer-list>

xml 文件

<SeekBar
        android:id="@+id/seek_own_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:maxHeight="4dp"                                   <!-- 设置进度条的高度  -->
        android:progressDrawable="@drawable/seekbar_progess"
        android:thumb="@drawable/seekbar_button_selector" />            <!-- thumb   seekbar 进度图形设置  progressbar 不用  -->

注意:当使用监听使进度条运行时,应使用线程来执行,在主线程中运行则会报错

监听方法:setooOnSeekChangListener();


2、RatingBar

我所知道的有两种定义方法

(1)用style = “” 格式     分别定义drawable和style,最后在xml中调用自己所定义的style即可

此种方法我在网上看到的比较多,可以很容易搜出来,当然步骤也更麻烦一点

(2)用progressdrawable = “”  格式,此法直接定义一个drawable即可

<?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/a1i"/>                       <!-- 此处定义基本同上 -->
    <item
        android:id="@android:id/progress"
        android:drawable="@drawable/a1h"/>
</layer-list>


xml文件

<RatingBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:progressDrawable="@drawable/ratingbar_layerlist" />


0 0
原创粉丝点击