当前位置: 首页>>代码示例>>C#>>正文


C# CALayer.AddAnimation方法代码示例

本文整理汇总了C#中CALayer.AddAnimation方法的典型用法代码示例。如果您正苦于以下问题:C# CALayer.AddAnimation方法的具体用法?C# CALayer.AddAnimation怎么用?C# CALayer.AddAnimation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CALayer的用法示例。


在下文中一共展示了CALayer.AddAnimation方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: RenderRasterOnLayer

        public static CALayer RenderRasterOnLayer(IRaster raster, IStyle style, IViewport viewport)
        {
            var tile = new CALayer();
            var data = NSData.FromArray(raster.Data.ToArray());
            var image = UIImage.LoadFromData(data);
            var frame = ConvertBoundingBox(raster.GetBoundingBox(), viewport);

            tile.Frame = frame;
            tile.Contents = image.CGImage;

            var aOpacity = new CABasicAnimation
                {
                    KeyPath = @"opacity",
                    From = new NSNumber(0.1),
                    To = new NSNumber(1.0),
                    Duration = 0.6
                };

            tile.AddAnimation(aOpacity, "opacity");

            return tile;
        }
开发者ID:jdeksup,项目名称:Mapsui.Net4,代码行数:22,代码来源:GeometryRenderer.cs

示例2: AttachFadeoutAnimation

		void AttachFadeoutAnimation (CALayer progress, CAAnimation animation, Func<bool> fadeoutVerifier)
		{
			animation.AnimationStopped += (sender, e) => {
				if (!fadeoutVerifier ()) {
					return;
				}

				if (!e.Finished) {
					return;
				}

				CABasicAnimation fadeout = CABasicAnimation.FromKeyPath ("opacity");
				fadeout.From = NSNumber.FromDouble (1);
				fadeout.To = NSNumber.FromDouble (0);
				fadeout.Duration = 0.5;
				fadeout.FillMode = CAFillMode.Forwards;
				fadeout.RemovedOnCompletion = false;
				fadeout.AnimationStopped += (sender2, e2) => {
					if (!e2.Finished)
						return;

					// Reset all the properties.
					inProgress = false;

					progress.Hidden = true;

					progress.Opacity = 1;
					progress.Frame = new CGRect (0, 0, 0, barHeight);
					progress.RemoveAllAnimations ();
					oldFraction = 0.0;

					progress.Hidden = false;
				};
				progress.Name = ProgressLayerFadingId;
				progress.AddAnimation (fadeout, "opacity");
			};
			progress.AddAnimation (animation, growthAnimationKey);
		}
开发者ID:sushihangover,项目名称:monodevelop,代码行数:38,代码来源:StatusBar.cs

示例3: AttachFadeoutAnimation

		void AttachFadeoutAnimation (CALayer progress, CAAnimation animation, Func<bool> fadeoutVerifier)
		{
			animation.AnimationStopped += (sender, e) => {
				if (!fadeoutVerifier ())
					return;

				CABasicAnimation fadeout = CABasicAnimation.FromKeyPath ("opacity");
				fadeout.From = NSNumber.FromDouble (1);
				fadeout.To = NSNumber.FromDouble (0);
				fadeout.Duration = 0.5;
				fadeout.FillMode = CAFillMode.Forwards;
				fadeout.RemovedOnCompletion = false;
				fadeout.AnimationStopped += (sender2, e2) => {
					if (!e2.Finished)
						return;

					inProgress = false;
					progress.Opacity = 0;
					progress.RemoveAllAnimations ();
					progress.RemoveFromSuperLayer ();
				};
				progress.Name = ProgressLayerFadingId;
				progress.AddAnimation (fadeout, "opacity");
			};
			progress.AddAnimation (animation, growthAnimationKey);
			var oldLayer = ProgressLayer;
			if (oldLayer == null)
				Layer.AddSublayer (progress);

			UpdateLayer ();
		}
开发者ID:RussellHaley,项目名称:monodevelop,代码行数:31,代码来源:StatusBar.cs

示例4: CreateAnimationForKeyPath

        public void CreateAnimationForKeyPath ( CALayer layer, string key, float toValue )
        {
            var _fromValue =  layer.ValueForKeyPath ( new NSString ( key));
            var _toValue = new NSNumber (toValue);
            var _key = new NSString (key);

            var barAnimation = CABasicAnimation.FromKeyPath (key);
            var currentValue = _fromValue;
            if (layer.PresentationLayer != null) {
                currentValue = layer.PresentationLayer.ValueForKeyPath (_key);
            }
            barAnimation.From = currentValue;
            barAnimation.To = _toValue;
            barAnimation.TimingFunction = CAMediaTimingFunction.FromName (CAMediaTimingFunction.Default);
            layer.AddAnimation (barAnimation, key);
            layer.SetValueForKeyPath (_toValue, _key);
        }
开发者ID:VDBBjorn,项目名称:toggl_mobile,代码行数:17,代码来源:XYDonutChart.cs

示例5: CreateBarAnimationForHeight

        public void CreateBarAnimationForHeight ( CALayer layer, nfloat toValue, CAAnimationDelegate @delegate)
        {
            const string key = "bounds.size.height";
            var _fromValue =  layer.ValueForKeyPath ( new NSString ( key));
            var _toValue = new NSNumber (toValue);
            var _key = new NSString (key);

            var barAnimation = CABasicAnimation.FromKeyPath (key);
            var currentValue = _fromValue;
            if (layer.PresentationLayer != null) {
                currentValue = layer.PresentationLayer.ValueForKeyPath (_key);
            }
            barAnimation.From = currentValue;
            barAnimation.To = _toValue;
            barAnimation.Delegate = @delegate;
            barAnimation.TimingFunction = CAMediaTimingFunction.FromName (CAMediaTimingFunction.Default);
            layer.AddAnimation (barAnimation, key);
            layer.SetValueForKeyPath (_toValue, _key);
        }
开发者ID:VDBBjorn,项目名称:toggl_mobile,代码行数:19,代码来源:BarChart.cs


注:本文中的CALayer.AddAnimation方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。