zoukankan      html  css  js  c++  java
  • ios 类似淘宝评论星星功能

    创建星星视图:

    //星星

        _myview = [[UIView alloc]initWithFrame:CGRectMake(95, 5, 200, 50)];

        UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(huadong:)];

        [_myview addGestureRecognizer:pan];

        UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(dianji:)];

        [_myview addGestureRecognizer:tap];

        [view1 addSubview:_myview];

        for (int i = 0; i < 5; i++) {

            imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"star01"]];

            imageView.frame = CGRectMake(_myview.bounds.origin.x+((i+1)*24), _myview.bounds.origin.y, 24, 24);

            

            [_myview addSubview:imageView];

            [_allStar addObject:imageView];

        }

     

    //分别在点击和滑动手势实现方法

     

    #pragma mark - 滑动的坐标

    -(void)huadong:(UIPanGestureRecognizer *)pan{

        CGPoint translation = [pan locationInView:_myview];

        

        for(int i = 0;i < 5 ; i++)

        {

            UIImageView *im ;

            im = _allStar[i];

            //NSLog(@"_all[%i] = (%f,%f)",i,im.frame.origin.x,im.frame.origin.y);

            

            if ((translation.x > 0)&&(translation.x < 144)&&(translation.y > 0)&&(translation.y < 24))

            {

                NSString *myscore = [NSString stringWithFormat:@"%i",((int)translation.x)/24];

                //UILabel *score = [[UILabel alloc]initWithFrame:CGRectMake(150, 180, 100, 100)];

                //[scrollView addSubview:score];

                //score.text = myscore;//_score是一个UILablemyscore为分数,显示在给用户看,关于这个不在赘述

                

                

                star = [myscore intValue];

                

                //星星

                if (im.frame.origin.x > translation.x)

                {

                    im.image =[UIImage imageNamed:@"star01"];

                }

                else

                {

                    im.image =[UIImage imageNamed:@"star02"];

                }

            }

        }

    }

    #pragma mark - 点击的坐标

    -(void)dianji:(UITapGestureRecognizer *)tap{

        CGPoint translation = [tap locationInView:_myview];

        

        for(int i = 0;i < 5 ; i++){

            

            UIImageView *im ;

            im = _allStar[i];

            

            if ((translation.x > 0)&&(translation.x < 144)&&(translation.y > 0)&&(translation.y < 24)) {

                NSString *myscore = [NSString stringWithFormat:@"%i",((int)translation.x)/24];

                

                //星星

                star = [myscore intValue];

     

                if (im.frame.origin.x > translation.x) {

                    im.image =[UIImage imageNamed:@"star01"];

                }else{

                    im.image =[UIImage imageNamed:@"star02"];

                }

            }

        }

    }

  • 相关阅读:
    python2代码转为python3
    Python3.7安装
    Fiddler配置与使用
    postman安装与使用
    kali-linux-2016.2-amd64安装步骤流程
    RedHat7.1_x64位安装步骤
    httpclient配置,使用
    Sentinel限流规则介绍
    mysql修改root用户密码
    winsw打包jar(WINDOWS服务)
  • 原文地址:https://www.cnblogs.com/damnbird/p/4911061.html
Copyright © 2011-2022 走看看