Ejemplo n.º 1
0
        void ConfigureProgressLayer()
        {
            progressView = new CircularShapeView((RectangleF)Bounds);
            progressView.ShapeLayer.FillColor = UIColor.Clear.CGColor;
            progressView.ShapeLayer.Path      = (Path != null) ? Path.CGPath : null;

            progressView.ShapeLayer.LineWidth   = (nfloat)LineWidth;
            progressView.ShapeLayer.StrokeColor = TintColor.CGColor;

            gradientLayer            = new CAGradientLayer();
            gradientLayer.Frame      = progressView.Frame;
            gradientLayer.StartPoint = new CGPoint(0, 0.5);
            gradientLayer.EndPoint   = new CGPoint(1, 0.5);
            gradientLayer.Mask       = progressView.ShapeLayer;

            CGColor[] defaultColors = new []
            {
                ColorExtension.RgbaColor(rgba: 0x9ACDE7FF).CGColor,
                ColorExtension.RgbaColor(rgba: 0xE7A5C9FF).CGColor
            };

            gradientLayer.Colors = Colors ?? defaultColors;

            Layer.AddSublayer(gradientLayer);
        }
Ejemplo n.º 2
0
        void ConfigureProgressGuideLayer(bool showProgressGuide)
        {
            if (showProgressGuide && progressGuideView == null)
            {
                progressGuideView = new CircularShapeView((RectangleF)Bounds);
                progressGuideView.ShapeLayer.FillColor = UIColor.Clear.CGColor;
                progressGuideView.ShapeLayer.Path      = progressView.ShapeLayer.Path;

                progressGuideView.ShapeLayer.LineWidth   = (System.nfloat)GuideLineWidth;
                progressGuideView.ShapeLayer.StrokeColor = TintColor.CGColor;

                guideLayer                 = new CAGradientLayer();
                guideLayer.Frame           = progressGuideView.Frame;
                guideLayer.Mask            = progressGuideView.ShapeLayer;
                guideLayer.BackgroundColor = ProgressGuideColor.CGColor;
                guideLayer.ZPosition       = -1;

                progressGuideView.UpdateProgress(1.0);

                Layer.AddSublayer(guideLayer);
            }
        }