swift ~星星评分(支持手势评分) ~封装demo

 联系人:石虎 QQ:1224614774  昵称: 嗡嘛呢叭咪哄​​​​​​​

 

                      QQ群:807236138  群称: iOS 技术交流学习群

                      QQ群:713799633   群称: iOS技术交流学习群-2
 

一、使用 参考核心类SHStarRatingView.swift

     下载地址: ​​​​​​​星星评分: swift实现星星评分功能(支持手势评分)

//
//  ViewController.swift
//  SHStarRatingView
//
//  Created by shihu on 2021/11/3.
//

import UIKit

class ViewController: UIViewController {
    
    let width: Int = 30 // 星星的宽、高
    
    private lazy var starRatingView: SHStarRatingView = {
        let temp = SHStarRatingView(frame: CGRect(x: 10, y: 200, width: width * 5 + 5 , height: width))
        temp.setBottomImageName("icon_star_gray", topIconStr: "icon_star_yellow", starCount: 5)
        temp.allowIncompleteStar = true  // 是否允许, 整颗星
        temp.allowAnimation = true  // 动画
        temp.allowProhibitManuallyStar = false // 禁止手动评分
        temp.scorePercent = 3.6 / 5 // 默认评分  (0 - 1)
        temp.delegate = self
        temp.backgroundColor = .yellow
        return temp
    }()
    
    lazy var nuberLabel: UILabel = { // 评分数值
        let temp: UILabel = UILabel(frame: CGRect(x: 0, y: 260, width: 300, height: 20))
        temp.text = "3.60"
        temp.textAlignment = .center
        temp.textColor = .red
        
        temp.backgroundColor = .yellow
        return temp
    }()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        self.view.addSubview(self.starRatingView)  //添加....五角星...
        self.view.addSubview(self.nuberLabel)      //添加....五角星数值...
    }
    
}

// MARK: - Private method

extension ViewController: SHStarRatingViewDelegate {
    
    func starRateView(_ starRateView: SHStarRatingView, currentScorePercent: CGFloat) {
        print("newScorePercent======\(currentScorePercent * 5)")
        self.nuberLabel.text = "\(currentScorePercent * 5)"
    }
    
}

二、demo 效果图

下载 demo

     码云:https://gitee.com/ShiHu132/SHUnitView

     github:https://gitee.com/ShiHu132/SHUnitView

三、 界面实现截图

谢谢!!!

本账号主要分享我成长过程中的各种心得感悟,包括技术总结, iOS、Swift 和 Mac 相关技术文章、工具资源、参与技术讨论,整理开发技巧、让学习成为一种享受!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值