WPF Multi-Touch 開發:慣性效果(Inertia)

來源:互聯網
上載者:User
關鍵字 initial 1000 可以 通過 這種

從上一篇實例可以發現在圖片移動過程中如果將手指移開螢幕則圖片會立刻停止,根據這種情況WPF 提供另外一種慣性效果(Inertia)。 通過它可以使UI 單元移動的更加符合物理特性、更為實際和流暢。

在前面代碼的基礎上還需要為<Canvas> 增加ManipulationInertiaStarting 事件。

&lt;Canvas x:Name="touchPad" Background="Gray"


ManipulationStarting="image_ManipulationStarting"


ManipulationDelta="image_ManipulationDelta"


ManipulationCompleted="image_ManipulationCompleted"


ManipulationInertiaStarting="image_ManipulationInertiaStarting"&gt;


image_ManipulationInertiaStarting 事件內容如下代碼,分別對TranslationBehavior、ExpansionBehavior、RotationBehavior 進行設置, 使其具備慣性特徵。

private void image_ManipulationInertiaStarting(object sender,


ManipulationInertiaStartingEventArgs e)


{


e.TranslationBehavior = new InertiaTranslationBehavior();


e.TranslationBehavior.InitialVelocity = e.InitialVelocities.LinearVelocity;


e.TranslationBehavior.DesiredDeceleration = 10.0 * 96.0 / (1000.0 * 1000.0);





e.ExpansionBehavior = new InertiaExpansionBehavior();


e.ExpansionBehavior.InitialVelocity = e.InitialVelocities.ExpansionVelocity;


e.ExpansionBehavior.DesiredDeceleration = 0.1 * 96 / 1000.0 * 1000.0;





e.RotationBehavior = new InertiaRotationBehavior();


e.RotationBehavior.InitialVelocity = e.InitialVelocities.AngularVelocity;


e.RotationBehavior.DesiredDeceleration = 720 / (1000.0 * 1000.0);


}  程式演示

通過下面視頻可以看到在進行Manipulation 時,圖片都已具備慣性效果。

  相關文章

1. WPF Multi-Touch 開發:Windows 7 安裝多點觸屏模擬器
2. WPF Multi-Touch 開發:基礎觸屏操作(Raw Touch)
3. WPF Multi-Touch 開發:高級觸屏操作(Manipulation)

  源碼下載:WpfInertia.zip
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.