使用自定义View的形式实现商城评价功能中的星级评分。
工具/原料
Xcode
方法/步骤
1
首先使用自定义view实现评分的星星视图,定义选择状态和未选择状态的imageView分别用黄色和灰色的星星表示,同时定义进度控制的属性,如下:
2
每次进行进度赋值时候进行视图重绘制,重写view的- (void)drawRect:(CGRect)rect;方法,如下:
3
将方法封装在- (UIImage *)segmentImage:(UIImage *)image percent:(CGFloat)percent fromLeft:(BOOL)left;中使用UIGraphics的形式进行,如下:
4
评分视图的触摸设置使用另外一个自定View来进行控制,主要的操作原理是根据触摸的进度来重新设置进度属性,对外初始化过程中进行相关属性配置,具体如下:
5
评分数的设置根据以下方法来进行设置,初始化设置的view之后调用分数设置方法可以设置相关的星星的数目,如下:
6
触摸事件的响应如下,触摸的进度使用block回调的形式返回到调用的地方,方便获取到评分数。
7
触摸开始,移动,结束和取消分别会调用步骤六中的方法进行重新设置和回调,如下:
8
封装之后的使用和展示效果如下:
上一篇:说说宝宝那些言行不一的童趣
下一篇:苹果如何永久关闭app评分提醒?