RatingBar
评分条(类似于淘宝、京东、1号店、亚马逊等商城类的评分条,支持0.5分哦!)
先上图,看一下是否符合你的场景吧!
功能描述
- 点击评分
- 滑动评分
- 个性化设置
如何使用
platform:ios, '8.0'
target '*****' do
pod 'JhtRatingBar'
end
2. 点击评分
/** 常规初始化方法 */
JhtRatingBar *bar = [[JhtRatingBar alloc] initWithFrame:CGRectMake(([UIScreen mainScreen].bounds.size.width - 280) / 2, 150, 280, 35)];
3. 滑动评分:只要这两个属性不关闭,默认是可以滑动评分的
/** 是否允许可触摸(默认:允许) */
@property (nonatomic, assign) BOOL isEnableTouch;
/** 是否允许滑动选择(默认:允许)(在isEnableTouch = YES的前提下才有意义) */
@property (nonatomic, assign) BOOL scrollSelectEnable;
4. 个性化设置:可以通过设置以下属性做相关设置(半分 && 背景颜色 && 获取最终评分)
/** 是否需要半分(默认不需要) */
@property (nonatomic, assign) BOOL isNeedHalf;
/** 底部视图的颜色(默认:白色) */
@property (nonatomic, strong) UIColor *bgViewColor;
/** 点亮星星发生变化 */
@property (nonatomic, copy) StarChange starChange;
/** 获得的分数 */
@property (nonatomic, assign, readonly) CGFloat scale;
__weak JhtRatingBar *weakBar = bar;
bar.starChange = ^() {
NSLog(@"scale = %lf", weakBar.scale);
};
注:1. 如果这样初始化后不传递其他属性,评分条相关属性会使用默认值,例如:星星总数(默认:5)
2. 如果评分条宽度在初始化设置时,不足以放下所有星星,内部会动态改变其宽度,以便放下所有星星
提醒
- ARC
- iOS >= 8.0
- iPhone \ iPad
希望
- 如果你在使用时发现bug,希望你能向 Issues 反馈,感谢或将尝试下载此框架的最新代码查看 bug 是否已修复。
- 如果你在使用时觉得功能不足,希望你能向 Issues 反馈,我将非常乐意添加更多有用的功能到这个框架中,感谢!