Bagikan melalui


InteractionTrackerInertiaRestingValue Kelas

Definisi

ExpressionAnimation yang menentukan posisi istirahat setelah interaksi.

Kelas InteractionTrackerInertiaRestingValue mendefinisikan dua ExpressionAnimationyang menghitung posisi istirahat eksplisit untuk InteractionTracker saat kondisi tertentu terpenuhi. InteractionTrackerInertiaRestingValue didefinisikan sebagai dua bagian: Pernyataan kondisional di mana lokasi istirahat spesifik InteractionTracker perlu didefinisikan secara eksplisit jika benar dan persamaan yang menggambarkan hubungan matematika yang menghasilkan lokasi. Gunakan kelas InteractionTrackerInertiaRestingValue saat perlu memastikan InteractionTracker mendarat di lokasi tertentu setelah interaksi terjadi.

public ref class InteractionTrackerInertiaRestingValue sealed : InteractionTrackerInertiaModifier
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.LiftedContract, 65536)]
/// [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.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.WindowsAppSDKContract, 65536)]
class InteractionTrackerInertiaRestingValue final : InteractionTrackerInertiaModifier
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.LiftedContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class InteractionTrackerInertiaRestingValue : InteractionTrackerInertiaModifier
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.WindowsAppSDKContract), 65536)]
public sealed class InteractionTrackerInertiaRestingValue : InteractionTrackerInertiaModifier
Public NotInheritable Class InteractionTrackerInertiaRestingValue
Inherits InteractionTrackerInertiaModifier
Warisan
Object Platform::Object IInspectable CompositionObject InteractionTrackerInertiaModifier InteractionTrackerInertiaRestingValue
Atribut

Contoh

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

Keterangan

Saat melampirkan pengubah InteractionTrackerInertiaRestingValue ke InteractionTracker, Anda mengonfigurasinya ke Posisi atau Skala X/Y.

ExpressionAnimation yang menentukan properti kondisi hanya dijalankan sekali, ketika interaksi selesai (jari dilepaskan), sementara Ekspresi RestingValue akan menjalankan setiap bingkai.

Pengubah InteractionTrackerInertiaRestingValue secara eksplisit mendefinisikan posisi istirahat InteractionTracker saat kondisi terpenuhi. Namun, ini tidak menentukan gerakan ke lokasi eksplisit ini - sistem akan menanganinya. Dengan demikian, jika Anda membutuhkan InteractionTracker untuk mengambil gerakan tertentu, tetapi tidak mengharuskannya untuk mendarat di tempat yang tepat, gunakan pengubah InteractionTrackerInertiaMotion .

Properti

Comment

String yang akan dikaitkan dengan CompositionObject.

(Diperoleh dari CompositionObject)
Compositor

Compositor digunakan untuk membuat CompositionObject ini.

(Diperoleh dari CompositionObject)
Condition

ExpressionAnimation yang menjelaskan kapan pengubah harus diterapkan.

Properti Kondisi adalah ExpressionAnimation yang menentukan kapan InteractionTracker harus memiliki posisi istirahat tertentu. Ekspresi ini dijalankan sekali setelah interaksi terjadi dan harus diselesaikan ke jenis Bool, jika tidak, kesalahan akan dilemparkan ketika kondisi dievaluasi. Lihat halaman kelas ExpressionAnimation untuk detail selengkapnya tentang membangun ekspresi.

DispatcherQueue

Mendapatkan DispatcherQueue untuk CompositionObject.

(Diperoleh dari CompositionObject)
ImplicitAnimations

Kumpulan animasi implisit yang melekat pada obyek ini.

(Diperoleh dari CompositionObject)
Properties

Kumpulan properti yang terkait dengan CompositionObject.

(Diperoleh dari CompositionObject)
RestingValue

ExpressionAnimation untuk menentukan nilai resting InteractionTracker jika ekspresi dalam properti Kondisi benar.

Properti Resting adalah ExpressionAnimation yang menjelaskan di mana InteractionTracker akan berpindah ke setelah interaksi jika kondisi yang sesuai terpenuhi. Ekspresi ini akan dijalankan setiap bingkai saat InteractionTracker berada di Inertia dan harus diselesaikan ke jenis Float, jika tidak, kesalahan akan dilemparkan ketika persamaan dievaluasi. Lihat halaman kelas ExpressionAnimation untuk detail selengkapnya tentang membangun ekspresi.

Metode

Close()

Menutup CompositionObject dan merilis sumber daya sistem.

(Diperoleh dari CompositionObject)
Create(Compositor)

Membuat instans InteractionTrackerInertiaRestingValue.

Dispose()

Melakukan tugas yang ditentukan aplikasi yang terkait dengan membebaskan, merilis, atau mengatur ulang sumber daya yang tidak dikelola.

(Diperoleh dari CompositionObject)
PopulatePropertyInfo(String, AnimationPropertyInfo)

Menentukan properti yang dapat dianimasikan.

(Diperoleh dari CompositionObject)
StartAnimation(String, CompositionAnimation, AnimationController)

Menyambungkan animasi dengan properti objek yang ditentukan dan memulai animasi.

(Diperoleh dari CompositionObject)
StartAnimation(String, CompositionAnimation)

Menyambungkan animasi dengan properti objek yang ditentukan dan memulai animasi.

(Diperoleh dari CompositionObject)
StartAnimationGroup(ICompositionAnimationBase)

Memulai grup animasi.

Metode StartAnimationGroup pada CompositionObject memungkinkan Anda memulai CompositionAnimationGroup. Semua animasi dalam grup akan dimulai pada saat yang sama pada objek.

(Diperoleh dari CompositionObject)
StopAnimation(String)

Memutuskan sambungan animasi dari properti yang ditentukan dan menghentikan animasi.

(Diperoleh dari CompositionObject)
StopAnimationGroup(ICompositionAnimationBase)

Menghentikan grup animasi.

(Diperoleh dari CompositionObject)
TryGetAnimationController(String)

Mengembalikan AnimationController untuk animasi yang berjalan pada properti yang ditentukan.

(Diperoleh dari CompositionObject)

Berlaku untuk

Lihat juga