Freigeben über


UIView.AddKeyframeWithRelativeStartTime(Double, Double, Action) Methode

Definition

Fügt einer Animation einen einzelnen Keyframe hinzu.

[Foundation.Export("addKeyframeWithRelativeStartTime:relativeDuration:animations:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 7, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public static void AddKeyframeWithRelativeStartTime (double frameStartTime, double frameDuration, Action animations);
static member AddKeyframeWithRelativeStartTime : double * double * Action -> unit

Parameter

frameStartTime
Double

Die Startzeit der Animation relativ zur enthaltenden Aktion (0-1)

frameDuration
Double

Die Dauer der Animation relativ zur enthaltenden Aktion (0-1).

animations
Action

Die Aktion, die den Endzustand des Keyframes definiert.

Attribute

Hinweise

Wenn diese Methode innerhalb der animations Aktion eines Aufrufs AnimateKeyframes(Double, Double, UIViewKeyframeAnimationOptions, Action, UICompletionHandler)von aufgerufen wird, gibt einen Keyframe in einer Animationssequenz an. Sowohl der Parameter als frameDuration auch der frameStartTime Parameter liegen zwischen m 0 und 1 und geben die Dauer relativ zum einschließenden AnimateKeyframes(Double, Double, UIViewKeyframeAnimationOptions, Action, UICompletionHandler)duration Parameter an.

Im folgenden Beispiel (das die Verwendung sowohl der übergebenen als auch eines C#-Lambdaausdrucks zeigt), werden die dritten Keyframes frameStartTime und frameDuration auf 0,5 festgelegt. Da das enthaltende AnimateKeyframesAsync(Double, Double, UIViewKeyframeAnimationOptions, Action)'s duration auf 3 Sekunden festgelegt ist, beginnt diese Animation bei 1,5 Sekunden und dauert 1,5 Sekunden.

var animationSucceeded = await UIView.AnimateKeyframesAsync(
		duration : 3,
		delay : 0,
		options: UIViewKeyframeAnimationOptions.AllowUserInteraction,
		animations: () => {
			UIView.AddKeyframeWithRelativeStartTime(0, 0.25, () => label.Frame = new RectangleF(label.Frame.Left + 250, label.Frame.Top, label.Frame.Width, label.Frame.Height)
				);
			UIView.AddKeyframeWithRelativeStartTime(0.25, 0.25, keyframe2);
			UIView.AddKeyframeWithRelativeStartTime(0.5, 0.5, keyframe3);
		}
	);

Gilt für: