本文整理汇总了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;
}
示例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);
}
示例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 ();
}
示例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);
}
示例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);
}