#747 –在WPF程序的触摸操作中使用惯性移动 (Implementing Inertia during Touch Manipulation)

翻译 2017年07月05日 16:06:00

原文地址:https://wpf.2000things.com/2013/02/01/747-implementing-inertia-during-touch-manipulation/

在WPF触摸操作滑动控件的时候,有的时候希望控件能够在手指离开控件后依照惯性继续滑动,直至慢慢减速停止。默认情况下这个功能是不开启的,当手指离开控件后,控件就会停止滑动。如果要开启惯性移动,需要在惯性移动开始事件ManipulationInertiaStarting 事件的事件处理函数中设置移动的减速加速度。

private void Image_ManipulationInertiaStarting(object sender, ManipulationInertiaStartingEventArgs e)
{
    e.TranslationBehavior.DesiredDeceleration = 40.0 * 96.0 / (1000.0 * 1000.0);
    Trace.WriteLine(e.TranslationBehavior.InitialVelocity);
}

上面的代码中我们设置减速加速度为40英寸每ms^2 。DesiredDeceleration 属性的单位是DIP/ms^2 ,因此我们将40乘以96(以WPF逻辑像素为单位)。注意,一般的加速度单位的单位时间为秒的平方,而DesiredDeceleration 属性的单位时间是毫秒的平方(ms^2),所以我们在后面除了一个 1000.0*1000.0。


除了位移可以使用惯性之外,缩放和旋转触摸操作也可以使用惯性。同样是在ManipulationInertiaStarting 事件的事件处理函数中国设置,它们对应的属性分别是ExpansionBehavior RotationBehavior

相关文章推荐

WPF技术触屏上的应用系列(五): 图片列表异步加载、手指进行缩小、放大、拖动 、惯性滑入滑出等效果

去年某客户单位要做个大屏触屏应用,要对档案资源进行展示之用。客户端是Window7操作系统,54寸大屏电脑电视一体机。要求有很炫的展示效果,要有一定的视觉冲击力,可触控操作。当然满足客户的要求也可以有...

#741 – 使用触摸事件移动控件(Using Touch Manipulation Events to Translate an Element)

原文地址:https://wpf.2000things.com/2013/01/24/741-using-touch-manipulation-events-to-translate-an-eleme...

Unity中的Input.Touch,移动端的触摸操作

原文地址:http://blog.csdn.net/qq_23156791/article/details/50453230  这篇博文将简单的记录,如何用unity处理在移动设备上的触控操...

VC++下使用ADO编写数据库程序 – 操作大全

[转]VC++下使用ADO编写数据库程序 – 操作大全 准备: (1)、引入ADO类 1 2 3 #import "c:\program fil...

RecyclerView使用探索2–仿百度贴吧实现item的触摸移动和删除效果

本章节内容如下:1.强大的RecyclerView! 2.ItemTouchHelper了解:触摸拖拽item && 左右滑动移除item; 3.小案例:仿百度贴吧首页列表; 4.踩坑笔记:ItemT...

[Phonegap+Sencha Touch] 移动开发72 List列表横向滑动操作(仿QQ列表滑动删除)

请看示例图,仿照的QQ的列表横滑删除。 支持Ext.dataview.List和Ext.dataview.DataView。本功能是Sencha touch插件类(不是Cordova插件),可...

用 Sencha Touch 构建移动 web 应用程序

概述 在软件开发领域中,有两个重要的趋势越来越重要:移动应用程序开发和基于标准的 HTML5 web 开发。任何类型开发的学习过程都是艰苦的。开发一个本地移动应用程序通常需要特定平台和技术知识,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)