InteractionTrackerInertiaRestingValue Clase
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í.
ExpressionAnimation que define la posición de resto después de una interacción.
La clase InteractionTrackerInertiaRestingValue define dos ExpressionAnimations que calculan una posición de reposo explícita para InteractionTracker cuando se cumple una condición determinada. InteractionTrackerInertiaRestingValue se define como dos partes: la instrucción condicional en la que la ubicación de reposo específica de InteractionTracker debe definirse explícitamente si es true y la ecuación que describe una relación matemática que genera la ubicación. Utilice la clase InteractionTrackerInertiaRestingValue cuando necesite asegurarse de que InteractionTracker llega a una ubicación específica después de que se produzca una interacción.
public ref class InteractionTrackerInertiaRestingValue sealed : InteractionTrackerInertiaModifier
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 196608)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class InteractionTrackerInertiaRestingValue final : InteractionTrackerInertiaModifier
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 196608)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class InteractionTrackerInertiaRestingValue : InteractionTrackerInertiaModifier
Public NotInheritable Class InteractionTrackerInertiaRestingValue
Inherits InteractionTrackerInertiaModifier
- Herencia
-
Object Platform::Object IInspectable CompositionObject InteractionTrackerInertiaModifier InteractionTrackerInertiaRestingValue
- Atributos
Requisitos de Windows
Familia de dispositivos |
Windows 10 Anniversary Edition (se introdujo en la versión 10.0.14393.0)
|
API contract |
Windows.Foundation.UniversalApiContract (se introdujo en la versión v3.0)
|
Ejemplos
void MandatorySingleSnapPoints(ContainerVisual containerVisual, Visual contentVisual)
{
//
// Set up our inertia modifiers to behave as dmanip's "single mandatory" snap-points, at a
// regular interval of 50px.
//
const float snapPointRange = 50.0f;
//
// Configure a "snap-point" to handle upward direction (to previous item).
//
var modifier1 = InteractionTrackerInertiaRestingValue.Create(_compositor);
// Add a condition for when this upward “snap-point” applies.
modifier1.Condition = _compositor.CreateExpressionAnimation(
"this.Target.NaturalRestingPosition.y < " +
"(this.StartingValue - mod(this.StartingValue, snapPointRange) + snapPointRange / 2)");
modifier1.Condition.SetScalarParameter("snapPointRange", snapPointRange);
// Configure the resting spot when the condition is met
modifier1.EndPoint = _compositor.CreateExpressionAnimation(
"this.StartingValue - mod(this.StartingValue, snapPointRange)");
modifier1.EndPoint.SetScalarParameter("snapPointRange", snapPointRange);
//
// Configure a "snap-point" to handle downward direction (to next item).
//
var modifier2 = InteractionTrackerInertiaRestingValue.Create(_compositor);
// Add a condition for when this downward “snap-point” applies.
modifier2.Condition = _compositor.CreateExpressionAnimation(
"this.Target.NaturalRestingPosition.y >= " +
"(this.StartingValue - mod(this.StartingValue, snapPointRange) + snapPointRange / 2)");
modifier2.Condition.SetScalarParameter("snapPointRange", snapPointRange);
// Configure the resting spot when the condition is met.
modifier2.EndPoint = _compositor.CreateExpressionAnimation(
"this.StartingValue + snapPointRange - mod(this.StartingValue, snapPointRange)");
modifier2.EndPoint.SetScalarParameter("snapPointRange", snapPointRange);
var modifiers = new InteractionTrackerInertiaRestingValue[] { modifier1, modifier2 };
//
// Add our "snap-point" inertia modifiers to the Y position of the InteractionTracker.
//
_tracker.ConfigurePositionYInertiaModifiers(modifiers);
}
Comentarios
Al adjuntar el modificador InteractionTrackerInertiaRestingValue a InteractionTracker, se configura en la posición X/Y o la escala.
ExpressionAnimation que define la propiedad condition solo se ejecuta una vez, cuando se completa la interacción (se libera el dedo), mientras que la expresión RestingValue se ejecuta cada fotograma.
Los modificadores InteractionTrackerInertiaRestingValue definen explícitamente la posición de reposo de InteractionTracker cuando se cumple la condición. Sin embargo, no define el movimiento a esta ubicación explícita: el sistema lo controlará. Por lo tanto, si necesita InteractionTracker para tomar un movimiento determinado, pero no lo requiere para llegar a un punto exacto, utilice el modificador InteractionTrackerInertiaMotion .
Propiedades
Comment |
Cadena que se va a asociar con compositionObject. (Heredado de CompositionObject) |
Compositor |
Compositor que se usa para crear este CompositionObject. (Heredado de CompositionObject) |
Condition |
ExpressionAnimation que describe cuándo se debe aplicar el modificador. La propiedad Condition es una expressionAnimation que define cuándo InteractionTracker debe tener una posición de reposo específica. Esta expresión se ejecuta una vez después de que se produce la interacción y debe resolverse en un tipo Bool; de lo contrario, se producirá un error cuando se evalúe la condición. Consulte la página clase ExpressionAnimation para obtener más detalles sobre la creación de expresiones. |
Dispatcher |
Distribuidor de CompositionObject. (Heredado de CompositionObject) |
DispatcherQueue |
Obtiene dispatcherQueue para CompostionObject. (Heredado de CompositionObject) |
ImplicitAnimations |
Colección de animaciones implícitas adjuntas a este objeto. (Heredado de CompositionObject) |
Properties |
Colección de propiedades asociadas a CompositionObject. (Heredado de CompositionObject) |
RestingValue |
ExpressionAnimation para definir el valor de resting de InteractionTracker si la expresión de la propiedad Condition es true. La propiedad Resting es una expressionAnimation que describe a dónde se moverá InteractionTracker después de una interacción si se cumple la condición correspondiente. Esta expresión se ejecutará cada fotograma mientras InteractionTracker está en inercia y debe resolverse en un tipo Float; de lo contrario, se producirá un error cuando se evalúe la ecuación. Consulte la página clase ExpressionAnimation para obtener más detalles sobre la creación de expresiones. |
Métodos
Close() |
Cierra compositionObject y libera los recursos del sistema. (Heredado de CompositionObject) |
ConnectAnimation(String, CompositionAnimation) |
Conecta y animación. (Heredado de CompositionObject) |
Create(Compositor) |
Crea una instancia de InteractionTrackerInertiaRestingValue. |
DisconnectAnimation(String) |
Desconecta una animación. (Heredado de CompositionObject) |
Dispose() |
Realiza tareas definidas por la aplicación asociadas a la liberación o al restablecimiento de recursos no administrados. (Heredado de CompositionObject) |
PopulatePropertyInfo(String, AnimationPropertyInfo) |
Define una propiedad que se puede animar. (Heredado de CompositionObject) |
StartAnimation(String, CompositionAnimation, AnimationController) |
Conecta una animación con la propiedad especificada del objeto e inicia la animación. (Heredado de CompositionObject) |
StartAnimation(String, CompositionAnimation) |
Conecta una animación con la propiedad especificada del objeto e inicia la animación. (Heredado de CompositionObject) |
StartAnimationGroup(ICompositionAnimationBase) |
Inicia un grupo de animación. El método StartAnimationGroup en CompositionObject permite iniciar CompositionAnimationGroup. Todas las animaciones del grupo se iniciarán al mismo tiempo en el objeto . (Heredado de CompositionObject) |
StopAnimation(String) |
Desconecta una animación de la propiedad especificada y detiene la animación. (Heredado de CompositionObject) |
StopAnimationGroup(ICompositionAnimationBase) |
Detiene un grupo de animaciones. (Heredado de CompositionObject) |
TryGetAnimationController(String) |
Devuelve un AnimationController para la animación que se ejecuta en la propiedad especificada. (Heredado de CompositionObject) |