Compartir a través de


InteractionTracker.NaturalRestingScale Propiedad

Definición

Escala de reposo natural para InteractionTracker.

La propiedad NaturalRestingScale es la posición de escala calculada en la que InteractionTracker se detendrá sin tener en cuenta los límites ni los modificadores de inercia. Esta propiedad suele ser útil para acciones como la virtualización en una experiencia de desplazamiento, donde es importante conocer la ubicación de dónde se detendrá InteractionTracker . Hay dos casos de uso principales para usar la propiedad NaturalRestingScale: Recuperar su valor actual en los argumentos del evento InertiaStateEntered o hacer referencia a esta propiedad en una ExpressionAnimation al crear elementos como modificadores de inercia.

public:
 property float NaturalRestingScale { float get(); };
float NaturalRestingScale();
public float NaturalRestingScale { get; }
var single = interactionTracker.naturalRestingScale;
Public ReadOnly Property NaturalRestingScale As Single

Valor de propiedad

Single

float

Escala de reposo natural para InteractionTracker.

Ejemplos

// Listen for the InertiaStateEntered event
public void InertiaStateEntered(InteractionTracker sender, 	InteractionTrackerInertiaStateEnteredArgs args)
{
  // Grab the NaturalRestingScale out of the args when the event is fired.
  float scaleRest = args.NaturalRestingScale;
}
void CreateBasicScaleSnapPoint(float maxScale, float minScale)
{
  var snappoint = InteractionTrackerInertiaRestingValue.Create(_compositor);

  // Reference the NaturalRestingScale of InteractionTracker in an ExpressionAnimation for conditional portion of an InertiaModifier.
  snappoint.Condition = _compositor.CreateExpressionAnimation("this.target.NaturalRestingScale >= min && this.target.NaturalRestingScale < max ");

  snappoint.Condition.SetScalarParameter("min", minScale);
  snappoint.Condition.SetScalarParameter("max", maxScale);

  // Snap to the highbound if condition met
  snappoint.RestingValue = _compositor.CreateExpressionAnimation("max");
  snappoint.RestingValue.SetScalarParameter("max", maxScale);

  scaleInertiaModifier.Add(snappoint);

  _tracker.ConfigureScaleInertiaModifiers(scaleInertiaModifier);
}

Comentarios

Los dos casos de uso descritos en el fragmento de código son los usos principales de la propiedad NaturalRestingScale. Aunque es posible que tenga la tentación de hacer referencia a esta propiedad fuera de InteractionTracker como cualquier otra relación object.property, no siempre obtendrá el valor más actualizado. Se recomienda en esta situación que escuche el evento InertiaStateEntered y obtenga el valor más reciente de los argumentos.

Se aplica a