swift星星评分控件

作者: 宁静1致远 | 来源:发表于2016-09-20 18:14 被阅读839次

项目中用到好多星星评分,整理了一下给大家分享下


星星.png

我封装了一个类,以适应星星评分的各种情况。下面直接上代码

1、调用类使用

1.1 创建

//let starView = JNStarRateView.init(frame: CGRect(x: 20,y: 60,width: 300,height: 50))//默认的是5颗星,分数为0分
let starView = JNStarRateView.init(frame: CGRect(x: 20,y: 60,width: 300,height: 50), starCount: 6, score: 3.0)
self.view.addSubview(starView)

1.2关闭用户操作,默认是开启的

starView.userInteractionEnabled = false//不支持用户操作

1.3支持滑动评分,默认是点击评分

starView.allowUserPan = true//滑动评星

1.4只支持完整星星评分,默认是一分等于一颗星,允许0.1颗星

 starView.allowUnderCompleteStar = false // 完整星星

1.5支持动画,默认是不支持

starView.usePanAnimation = true

1.6通过协议代理返回评分后的分数,别忘记了准守协议哦

starView.delegate = self
func starRate(view starRateView: JNStarRateView, score: Float) {
        print(score)
    }

2、类源码实现原理

通过在星星view里创建两个view

    private var starBackgroundView:UIView!
    private var starForegroundView:UIView!

在view里通过循环创建单个星星

//添加星星
        let width = self.frame.size.width / CGFloat(count)
        for index in 0...count {
            let imageView = UIImageView.init(frame: CGRect(x:CGFloat(index) * width,y: 0,width:width,height:self.bounds.size.height))
            imageView.image = UIImage(named: imageName)
            starView.addSubview(imageView)
        }

再通过重设starForegroundView的frame来实现星星评分,是不是很简单,下面附上github上的代码demo(swift3.0写的,如运行不了,请升级到Xcode8):https://github.com/yinjining/JNStarRateView

相关文章

  • swift星星评分控件

    项目中用到好多星星评分,整理了一下给大家分享下 我封装了一个类,以适应星星评分的各种情况。下面直接上代码 1、调用...

  • Swift 星星评分控件 改写

    前言: 突然需要使用星星评分控件了。我们使用Swift开发,闲的就改写了一个库。 Objective-C原作者地址...

  • swift 评分控件星星的实现

    评分控件可以只需要传入显示的view和所需评分,简单易集成

  • iOS 星星评分控件

    简单的自用星星控件,有空再加上手势 星星的间距取的是星星的宽度的五分之一,view的宽度等于五个星星加上四个空隙 ...

  • 实现评分星星by Swift

    星星评分,支持手势滑动,支持非满星。大致原理是使用UIImageView排列来实现,加上手势,就完成这个功能了,封...

  • RatingBar Android星星评分控件

    简述: 一个的自定义的Android评分控件(极简洁,易用)!可更改图标,大小,间距,可选半图模式,点击模式,拖动...

  • iOS自定义星星评分

    一个使用星星评分的控件 (星星的图片在最后面)StarRatingView.h StarRatingView.m ...

  • SwiftStarRatingView使用简介

    简介 SwiftyStarRatingView 是一个用 swift 3.0 编写的评分控件,可以支持自定义图片和...

  • 星星评分控件TQStarRatingView揭秘!(一)

    今天为大家带来一个iOS星级评分控件的实现,欢迎拍砖。 在github上搜索iOS星级评分控件,可以看到TQSta...

  • 星星评分控件TQStarRatingView揭秘!(二)

    上一篇给大家介绍了TQStarRatingView是如何来处理分数展示的。 这次我们来讲讲其它一些内容。 首先讲讲...

网友评论

本文标题:swift星星评分控件

本文链接:https://www.haomeiwen.com/subject/ibyoettx.html