# Android-CustomRatingBar
**Repository Path**: ryantech/Android-CustomRatingBar
## Basic Information
- **Project Name**: Android-CustomRatingBar
- **Description**: 一个自定义的RatingBar
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 2
- **Created**: 2016-04-08
- **Last Updated**: 2020-12-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
#Android-CustomRatingBar
#自定义的星形组件
---
## 项目相关
- 平台:Android
- 语言:java and xml
- 目前版本:1.0
### 前言
---
因为项目中用到了评分系统,而系统自带的RatingBar功能看似完整,但大小定义太过困难,所以考虑自定义view
## 截图
---

###技术选型
---
自定义View有继承View和ViewGroup的差别
星形可以使用Path绘制,但太过繁琐,且一般星形都是设计师的切图,随时可能发生变化,所以考虑继承ViewGroup来实现
而继承系统控件和ViewGroup各有优劣,ViewGroup相对轻量级一些,而继承LinearLayout也可以实现,这里我选用的是ViewGroup,因为系统控件中有很多系统级属性,这些属性如果被使用,则不能保证考虑周全
###自定义属性
## 使用
---
### xml文件
---
### java核心代码
---
mRb.setOnStarChangeListener(this);
@Override
public void onStarChange(CustomRatingBar ratingBar, float star) {
Log.d("MainActivity", "star:" + star);
}
## 后记
在写完项目后,我也发现了一些其他类似的项目,继承自LinearLayout的项目,可惜是使用imageView的onclick事件实现,目测无法拖动改变星星的数量
后续会考虑将项目上传jcenter/mavencenter
## 相关
- [email](mailto:cjl_spy@163.com?subject=RatingBar-Feedback)
- 欢迎fork
- 欢迎指正
- 欢迎提bug