HDRatingStarView 1.2.0

HDRatingStarView 1.2.0

VanJay 维护。



  • 作者:
  • wangwanjie

HDRatingStarView

高可自定义,支持任意粒度的星星点击、滑动评分,具体使用请查看 Demo

CI Status Version License Platform

效果

Effect

示例

为了运行示例项目,请克隆仓库,并首先从 Example 目录运行 pod install

使用

HDRatingStarView *view = [[HDRatingStarView alloc] init];
view.frame = (CGRect){20, 100, [view sizeThatFits:CGSizeMake(CGFLOAT_MAX, 0)]};
view.selectScoreHandler = ^(CGFloat score) {
    NSLog(@"打分 %.2f", score);
};
[self.view addSubview:view];

自定义

/**
 * 星星图片,如果设置了将不绘制五角星
 * 设置此属性只使用该图的形状,默认颜色依旧由 defaultColor 决定
 */
@property (nonatomic, strong) UIImage *starImage;

/** 星星宽度,星星宽高相同,默认 35 */
@property (nonatomic, assign) CGFloat starWidth;

/* 星星个数,默认 5 个 */
@property (nonatomic, assign) NSInteger starNum;

/* 星星间距 默认 5 */
@property (nonatomic, assign) CGFloat itemMargin;

/**
 * 一个星星分几份,默认 2,即相差一颗星打分间隔在2份,半星打分
 *  改变此属性可实现任意粒度的打分
 */
@property (nonatomic, assign) NSInteger countForOneStar;

/* 总分,默认 5 分 */
@property (nonatomic, assign) CGFloat fullScore;

/* 选择分数回调 */
@property (nonatomic, copy) void (^selectScoreHandler)(CGFloat score);

/** 星星渲染颜色 */
@property (nonatomic, strong) UIColor *renderColor;

/** 星星默认颜色 */
@property (nonatomic, strong) UIColor *defaultColor;

/** 设置当前评分 */
@property (nonatomic, assign) CGFloat score;

/** 允许触摸修改评分,默认 YES */
@property (nonatomic, assign) BOOL allowTouchToSelectScore;

/**
 * 设置分数时,是否纠正分数,默认关闭
 * 比如如果设置的最小分数粒度是 0.5,当设置 1.4 分时,会自动补偿为 1.5 分
 */
@property (nonatomic, assign) BOOL shouldFixScore;

/** 是否允许滑动打分,默认开启 */
@property (nonatomic, assign) BOOL allowSlideToChangeScore;

需求

iOS 8 或以上。

安装

HDRatingStarView 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile

pod 'HDRatingStarView'

作者

王万杰,[email protected]

许可证

HDRatingStarView 遵循 MIT 许可协议。见 LICENSE 文件获取更多信息。