# KRatingBar
**Repository Path**: KosmoSakura_deep/KRatingBar
## Basic Information
- **Project Name**: KRatingBar
- **Description**: 自定义RatingBar:折腾了一个简单使用的评分控件
- **Primary Language**: Android
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2018-11-02
- **Last Updated**: 2022-09-21
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# KRatingBar
先说说,这个控件存在的意义(和原生RatingBar相比):
* 1.自动排列:指定星星数量后,星星自动均等排列
* 2.星星点击动画:算是满足一丢丢少女心吧
* 3.星星数量脱离了RatingBar宽度的控制
* 4.避免星星出现拖影和“流泪”现象
* 5.星星的样式直接调用res的drawable,不用再单独去定义个layer-list
总之就是使用更方便一点吧。请看效果:

---
> 为啥要写这个控件呢?我就略过了,因为无关信息只会干扰你阅读。下面说说这个控件的使用
## 1.参数
我添加了这几个参数,分别是:
- star_width、star_height:星星宽高
- starMax、rating:星星的总数和点亮的数量
- starEmpty、starFill:星星两种状态的图标
```xml
```
## 2.布局
这个没什么说的,布局写完基本就可以使用了。逻辑都在控件内做了处理。
```xml
```
## 3.代码控制
当然,也可以在代码中对KRatingBar动态的控制
```java
bar.setStarEmpty(R.drawable.ic_stars_off)
.setStarFill(R.drawable.ic_stars)
.setStarMax(5)
.setRating(3)
.setRatingChangeListener(new KRatingBar.RatingChangeListener() {
@Override
public void onRatingChange(int rating) {
Toast.show( "感谢您的" + rating + "个星星");
}
}).runAnim();
```
## 4.效果
#### 4.1:显示动画:

#### 4.2:点击动画

#### 4.3:代码控制的效果
