美文网首页
iOS 画一个圆展示比例

iOS 画一个圆展示比例

作者: 路边的风景呢 | 来源:发表于2019-08-20 09:29 被阅读0次

我这里是要用三个参数进行比然后用圆来显示各占百分之多少的样子。我在自定义的View里面写的。

//数组里面装的是字典,,字典里有两个key -> strokeColor和precent

@property (nonatomic,assign) NSArray *circleArray;

//    下面的三个分别代表的是我们这里要展示的三个参数

-(void)drawRectViewWithVip:(float)Vip andBackMoney:(float)BackMoney andClass:(float)Class;

在点M文件里面

__block float a = 0;

    NSArray* circleArray  =@[

                               @{

                                   @"strokeColor":RGBCOLOR(98,178,255),

                                   @"precent":@(Vip/(BackMoney+Class+Vip))//+d+e+f

                                   },

//                              @{

//                                  @"strokeColor":[UIColor whiteColor],

//                                  @"precent":@(d/(BackMoney+Class+Vip+d+e+f))

//                                  },

                               @{

                                   @"strokeColor":RGBCOLOR(255,231,132),

                                   @"precent":@(BackMoney/(BackMoney+Class+Vip))//+d+e+f

                                   },

//                              @{

//                                  @"strokeColor":[UIColor whiteColor],

//                                  @"precent":@(e/(BackMoney+Class+Vip+d+e+f))

//                                  },

                               @{

                                   @"strokeColor":RGBCOLOR(255,175,137),

                                   @"precent":@(Class/(BackMoney+Class+Vip))//+d+e+f

                                   },

//                              @{

//                                  @"strokeColor":[UIColor whiteColor],

//                                  @"precent":@(f/(BackMoney+Class+Vip+d+e+f))

//                                  },

                               ];

    [circleArrayenumerateObjectsUsingBlock:^(NSDictionary*obj,NSUIntegeridx,BOOL*_Nonnullstop) {

        //创建出CAShapeLayer

        self.shapeLayer= [CAShapeLayerlayer];

        self.shapeLayer.frame =CGRectMake(0,0, self.bounds.size.width,self.bounds.size.height);//设置shapeLayer的尺寸和位置

        //    self.shapeLayer.position = self.view.center;

        self.shapeLayer.fillColor = [UIColor clearColor].CGColor;//填充颜色为ClearColor

        //设置线条的宽度和颜色

        self.shapeLayer.lineWidth=10.0f;

        self.shapeLayer.strokeColor= [obj[@"strokeColor"]CGColor];

        //创建出圆形贝塞尔曲线

        UIBezierPath *circlePath = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0,0, self.bounds.size.width,self.bounds.size.height)];

        //让贝塞尔曲线与CAShapeLayer产生联系

        self.shapeLayer.path= circlePath.CGPath;

        self.shapeLayer.strokeStart= a;

        self.shapeLayer.strokeEnd= [obj[@"precent"]floatValue] + a;

        a =self.shapeLayer.strokeEnd;

        //添加并显示

        [self.layeraddSublayer:self.shapeLayer];

        //添加圆环动画

        CABasicAnimation *pathAnimation = [CABasicAnimation animationWithKeyPath:@"strokeEnd"];

        pathAnimation.duration=1.0;

        pathAnimation.fromValue=@(0);

        pathAnimation.toValue=@(1);

        pathAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];

        [self.shapeLayeraddAnimation:pathAnimationforKey:@"strokeEnd"];

    }];

相关文章

  • iOS 画一个圆展示比例

    我这里是要用三个参数进行比然后用圆来显示各占百分之多少的样子。我在自定义的View里面写的。 //数组里面装的是字...

  • 用AI画一个太极图

    1.先画一个圆,并原位复制一个备用 2.用“减去顶层”命令得到一个半圆。将另一个圆用“比例缩放”工具,缩小50%,...

  • CoreAnimation | 核心动画 | QQ气泡拖拽 |

    展示效果 实现思路 2个圆(一个是固定圆,一个是可拖动的圆)贝塞尔画形状拖动的时候固定圆的比例是缩小的到一定距离的...

  • 教你一种快速画出人脸比例的小技巧!素描人像实用教程!

    教你一个快速画人脸比例的技巧。 先画一个圆形。标出整个圆的中间位置。再把上面分成三份,下面也分成三份。整个圆的高度...

  • 初学者怎么去画“肥皂泡”

    如何画一个shabon 1.画一个圆 首先,在线条画图层上画一个圆。 这次,我正在使用CLIP STUDIO的同心...

  • canvas基本操作

    画一条直线 画一个矩形 画一个三角形 画一个圆

  • 画一个圆

    世界是一个圆。 世界有时候很大,有时候又很小。走了好大一圈,又会再遇见。 也许外部的世界,现实的生活,有时候不尽如...

  • iOS 自定义折线图

    iOS 自定义折线图 效果及 Demo 由于产品需求要展示分数,并且60分以下展示需要压缩比例,而开源的图表库太过...

  • 中秋,画一个圆

    穿过薄云的月光 烙印在大地上 一个,一个,孤单的身影 是昨日的等待 是今夜的相思 / 吹落黄叶的秋风 吟唱在夜色里...

  • 努力画一个圆?

    鲁迅先生《阿Q正传》的结尾,阿Q想努力画一个圆,结果画得歪歪扭扭,想圆满却毙命了。 曾国藩有《小满》诗一首:花未全...

网友评论

      本文标题:iOS 画一个圆展示比例

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