InteractionTracker.TryUpdatePositionWithAnimation Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Intenta actualizar la posición de InteractionTracker aplicando una animación.
El método TryUpdatePositionWithAnimation actualiza la posición de InteractionTracker en función de la entrada CompositionAnimation como parámetro. Este método se usa en situaciones en las que el movimiento de InteractionTracker debe definirse mediante una animación específica, en lugar de la experiencia de inercia tradicional. Se puede llamar a TryUpdatePositionWithAnimation desde el estado Inactivo o Inercia: al hacerlo, la posición de InteractionTracker se controlará mediante la animación definida y entrará en el estado CustomAnimation.
public:
virtual int TryUpdatePositionWithAnimation(CompositionAnimation ^ animation) = TryUpdatePositionWithAnimation;
int TryUpdatePositionWithAnimation(CompositionAnimation const& animation);
public int TryUpdatePositionWithAnimation(CompositionAnimation animation);
function tryUpdatePositionWithAnimation(animation)
Public Function TryUpdatePositionWithAnimation (animation As CompositionAnimation) As Integer
Parámetros
- animation
- CompositionAnimation
Animación que se va a aplicar a InteractionTracker.
Devoluciones
int
Devuelve el identificador de solicitud. En las transiciones de estado, la solicitud que provocó el cambio en estado se incluirá en los argumentos. Estos identificadores comenzarán en 1 y aumentarán con cada llamada try durante la vigencia de la aplicación.
Ejemplos
void CustomAnimationForIT(Vector3 newPosition)
{
// Create a cubic bezier easing function that will be used in the KeyFrames
CompositionEasingFunction cubicBezier = _compositor.CreateCubicBezierEasingFunction(new Vector2(.17f, .67f), new Vector2(1f, 1f);
// Create the Vector3 KFA
Vector3KeyFrameAnimation kfa = _compositor.CreateVector3KeyFrameAnimation();
kfa.Duration = TimeSpan.FromSeconds(3);
// Create the KeyFrames
kfa.InsertKeyFrame(1.0f, newPosition, cubicBezier);
// Update InteractionTracker position using this animation
_tracker.TryUpdatePositionWithAnimation(kfa);
}
Comentarios
Al crear la animación con la que desea actualizar la posición de InteractionTracker , no es necesario llamar a StartAnimation. El sistema se encargará de esto en segundo plano una vez que la animación se pasa a través de TryUpdatePositionWithAnimation.
Al definir la animación que animará la posición de InteractionTracker , asegúrese de usar vector3KeyFrameAnimation o expressionAnimation que se resuelva en un vector3.
En la tabla siguiente se resume el comportamiento esperado cuando se llama a este método en un estado determinado:
Estado actual | Resultado |
---|---|
Inactivo | La animación solicitada se inicia en la propiedad solicitada, los cambios de estado en CustomAnimation |
Interacción | Solicitud omitida |
Inercia | La animación solicitada se inicia en la propiedad solicitada, los cambios de estado en CustomAnimation |
CustomAnimation | La animación actual se detiene y se inicia la nueva animación solicitada en la propiedad solicitada, el estado vuelve a escribir CustomAnimation. |