close

有些時候,我們會需要像評分一樣的元件

比如說 show 出今天幸運度、電影幾顆星…之類的

通常我們會使用 android.widget.RatingBar

這可以解決大部份的基本需求

 

但如果我們是要更多動畫

或是更多客製的需求就會有點不夠用了

剛好公司的專案中需要

所以我就寫了一個 Library 提供給大家

 

Sample 如下:

sample          animation_damo

 

原碼點此進入:https://github.com/WillysFish/AnimationRatingBar

 

 

使用方式很簡單

直接放在想要的地方就可以了,如下

<studio.zewei.willy.animationratingbar.AnimationRatingBar
    android:id="@+id/rating"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:iconAnimationMode="rotation"
    app:iconSize="18dp"
    app:iconSpacingEnd="3.5dp"
    app:iconSpacingStart="3.5dp"
    app:iconSpacingTop="3dp"
    app:iconSpacingBottom="3dp"
    app:rating="2.5"
    app:emptyIcon="@drawable/ic_hart_none"
    app:halfIcon="@drawable/ic_hart_all"
    app:filledIcon="@drawable/ic_hart_all"
    app:iconAnimationSpeed="1"
    app:isIndicatorBar="true"
    app:numStars="5" />

 

 

那麼這些自訂參數是什麼意思呢?

 

numStarts

我們 icon 的數量

 

rating

分數多少,這邊要注意

如果分數是從 API 或是其他資料來的話,這邊請設為 0, 或是不設定

 

isIndicatorBar

true 的話就是不可點擊,只用來顯示

 

iconSize / emptyIcon / filledIcon / halfIcon

自訂喜歡的 icon 

設定 icon 大小,與空值、填值與半值

有些分數可能都是整數

這時候不需要 0.5 的 icon 可以設定成和 empty or filled  一樣

 

iconSpacingEnd / iconSpacingStart / iconSpacingTop / iconSpacingBottom

設定 icon 的上下左右間距

 

iconAnimationSpeed

設定 icon 動畫的播放速度

 

iconAnimationMode

可以取消動畫,或是選擇一個喜歡的動畫

 

想知道更多功能的話

 

可以點我到 Github 看看

 

Library 使用方法:

在 root build.gradle 加入

allprojects {
    repositories {
        。。。
        maven { url 'https://jitpack.io' }
    }
}

 

然後 implementation

implementation 'com.github.WillysFish:AnimationRatingBar:1.0.0'

 

 

 

參考資料:

https://github.com/WillysFish/AnimationRatingBar


arrow
arrow

    顏澤偉 發表在 痞客邦 留言(0) 人氣()