InteractionTrackerInertiaRestingValue Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Um ExpressionAnimation que define a posição restante após uma interação.
A classe InteractionTrackerInertiaRestingValue define dois ExpressionAnimation s que calculamuma posição de repouso explícita para InteractionTracker quando uma condição específica é atendida. O InteractionTrackerInertiaRestingValue é definido como duas partes: a instrução condicional na qual o local de descanso específico do InteractionTracker precisa ser explicitamente definido se verdadeiro e a equação que descreve uma relação matemática que gera o local. Utilize a classe InteractionTrackerInertiaRestingValue ao precisar garantir que o InteractionTracker chegue a um local específico após a interação.
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
- Herança
-
Object Platform::Object IInspectable CompositionObject InteractionTrackerInertiaModifier InteractionTrackerInertiaRestingValue
- Atributos
Requisitos do Windows
Família de dispositivos |
Windows 10 Anniversary Edition (introduzida na 10.0.14393.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v3.0)
|
Exemplos
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);
}
Comentários
Ao anexar o modificador InteractionTrackerInertiaRestingValue ao InteractionTracker, configure-o para a Posição X/Y ou a Escala.
O ExpressionAnimation que define a propriedade de condição só é executado uma vez, quando a interação é concluída (dedo liberado), enquanto a Expressão RestingValue é executada a cada quadro.
Os modificadores InteractionTrackerInertiaRestingValue definem explicitamente a posição de descanso do InteractionTracker quando a condição é atendida. No entanto, ele não define o movimento para esse local explícito – o sistema lidará com isso. Portanto, se você precisar que o InteractionTracker faça um movimento específico, mas não exija que ele chegue a um local exato, utilize o modificador InteractionTrackerInertiaMotion .
Propriedades
Comment |
Uma cadeia de caracteres a ser associada ao CompositionObject. (Herdado de CompositionObject) |
Compositor |
O Compositor usado para criar este CompositionObject. (Herdado de CompositionObject) |
Condition |
Uma ExpressionAnimation que descreve quando o modificador deve ser aplicado. A propriedade Condition é uma ExpressionAnimation que define quando o InteractionTracker deve ter uma posição de repouso específica. Essa expressão é executada uma vez após a interação ocorrer e deve resolve a um tipo Bool; caso contrário, um erro será gerado quando a condição for avaliada. Consulte a página da classe ExpressionAnimation para obter mais detalhes sobre como criar expressões. |
Dispatcher |
O dispatcher do CompositionObject. (Herdado de CompositionObject) |
DispatcherQueue |
Obtém o DispatcherQueue para o CompostionObject. (Herdado de CompositionObject) |
ImplicitAnimations |
A coleção de animações implícitas anexadas a esse objeto. (Herdado de CompositionObject) |
Properties |
A coleção de propriedades associadas ao CompositionObject. (Herdado de CompositionObject) |
RestingValue |
Um ExpressionAnimation para definir o valor de repouso de InteractionTracker se a expressão na propriedade Condition for verdadeira. A propriedade Resting é uma ExpressionAnimation que descreve para onde o InteractionTracker será movido após uma interação se a condição correspondente for atendida. Essa expressão será executada a cada quadro enquanto InteractionTracker estiver em Inércia e deverá resolve a um tipo Float; caso contrário, um erro será gerado quando a equação for avaliada. Consulte a página da classe ExpressionAnimation para obter mais detalhes sobre como criar expressões. |
Métodos
Close() |
Fecha o CompositionObject e libera os recursos do sistema. (Herdado de CompositionObject) |
ConnectAnimation(String, CompositionAnimation) |
Conecta e animação. (Herdado de CompositionObject) |
Create(Compositor) |
Cria uma instância de InteractionTrackerInertiaRestingValue. |
DisconnectAnimation(String) |
Desconecta uma animação. (Herdado de CompositionObject) |
Dispose() |
Realiza tarefas definidas pelo aplicativo associadas à liberação ou à redefinição de recursos não gerenciados. (Herdado de CompositionObject) |
PopulatePropertyInfo(String, AnimationPropertyInfo) |
Define uma propriedade que pode ser animada. (Herdado de CompositionObject) |
StartAnimation(String, CompositionAnimation, AnimationController) |
Conecta uma animação com a propriedade especificada do objeto e inicia a animação. (Herdado de CompositionObject) |
StartAnimation(String, CompositionAnimation) |
Conecta uma animação com a propriedade especificada do objeto e inicia a animação. (Herdado de CompositionObject) |
StartAnimationGroup(ICompositionAnimationBase) |
Inicia um grupo de animação. O método StartAnimationGroup em CompositionObject permite iniciar CompositionAnimationGroup. Todas as animações no grupo serão iniciadas ao mesmo tempo no objeto . (Herdado de CompositionObject) |
StopAnimation(String) |
Desconecta uma animação da propriedade especificada e interrompe a animação. (Herdado de CompositionObject) |
StopAnimationGroup(ICompositionAnimationBase) |
Interrompe um grupo de animação. (Herdado de CompositionObject) |
TryGetAnimationController(String) |
Retorna um AnimationController para a animação em execução na propriedade especificada. (Herdado de CompositionObject) |