Condividi tramite


UIView.AddKeyframeWithRelativeStartTime(Double, Double, Action) Metodo

Definizione

Aggiunge un singolo fotogramma chiave a un'animazione.

[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

Parametri

frameStartTime
Double

Ora iniziale dell'animazione, rispetto all'azione contenente (0-1)

frameDuration
Double

Durata dell'animazione, rispetto all'azione contenente (0-1).

animations
Action

Azione che definisce lo stato finale del fotogramma chiave.

Attributi

Commenti

Questo metodo, quando viene chiamato all'interno dell'azione animations di una chiamata a AnimateKeyframes(Double, Double, UIViewKeyframeAnimationOptions, Action, UICompletionHandler), specifica un fotogramma chiave in una sequenza di animazione. Sia l'intervallo frameStartTime di parametri che frameDuration si applicano a 0 a 1 e specificano le durate relative al parametro di inclusione AnimateKeyframes(Double, Double, UIViewKeyframeAnimationOptions, Action, UICompletionHandler)duration .

Ad esempio, nell'esempio seguente (che mostra l'uso di e un'espressione lambda C#), il terzo fotogramma chiave frameStartTime e frameDuration sono entrambi impostati su 0,5; poiché l'oggetto del contenitore AnimateKeyframesAsync(Double, Double, UIViewKeyframeAnimationOptions, Action)duration è impostato su 3 secondi, questa animazione inizierà a 1,5 secondi e richiederà 1,5 secondi per completare.

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);
		}
	);

Si applica a