问题标签 [touchscreen]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
user-interface - 如何计算负加速度?
我正在实现触摸屏 UI 的滚动行为,但此刻我太累了,无法将注意力集中在一些所谓的微不足道的数学上:
f(x)->?
UI 应该允许用户在任何方向上拖动和“扔”视图,并且即使在他从屏幕上松开手指后也可以让它滚动一段时间。它有点动量,取决于用户在松开手指之前拖动的速度。
所以我有一个起始速度(v0),每 20 毫秒我滚动一个相对于当前速度的量。每次滚动迭代时,我都会稍微降低速度,直到我停止它时它低于阈值。当我将其减少一个固定量(线性)时,它看起来不正确,所以我需要对负加速度进行建模,但未能提出一个体面的简单公式来计算我必须降低速度的量在每次迭代中。
更新:
感谢您到目前为止的回复,但我仍然没有设法从反馈中获得令人满意的功能。我可能没有很好地描述所需的解决方案,所以我将尝试给出一个真实世界的例子来说明我想做什么样的计算:
假设某辆汽车在某条街道上行驶,驾驶员将刹车踩到最大,直到汽车停下来。驾驶员在同一条街道上多次使用同一辆车执行此操作,但开始以不同的速度制动。当汽车减速时,我希望能够仅根据当前速度计算出它在一秒钟后的速度。对于这个计算,当驾驶员开始休息时汽车以何种速度行驶并不重要,因为所有环境因素都保持不变。当然,公式中会有一些常数,但是当汽车减速到 30 m/s 时,它会在下一秒走相同的距离,无论驾驶员开始刹车时是在 100 还是 50 m/s 行驶. 因此,从击中休息开始的时间也不会是函数的参数。在一定速度下的减速度总是相同的。
在这种情况下,假设减速度、质量、摩擦等一些任意常数并忽略空气阻力等复杂影响,你如何计算一秒钟后的速度?我只追求动能和它由于打破汽车的摩擦而消散。
更新 2 我现在看到汽车的加速度是线性的,这实际上不是我想要的。明天我会清理它并尝试新的建议。感谢您迄今为止的意见。
actionscript-3 - Adobe AIR:触摸屏无法正确触发鼠标按下事件
我在 as3 中设计了一个游戏亭应用程序我在 Windows 7 中的 Sony vaio l pc(如 hp 的 touchsmarts)上使用它该应用程序不需要任何多点触控手势(仅单点触控单击和拖动)所以我正在使用鼠标事件
一切都很好(包括鼠标单击和移动事件),除了单次触摸屏幕(没有移动)不会触发鼠标。仅在手指稍微移动后才会触发
在应用程序之外,在我的桌面上,我看到 Windows 7 的小光标立即跳到手指所在的位置,这意味着这个问题不是硬件或 Windows 问题,而是 Flash 应用程序内部如何接收“翻译的”触摸 -来自操作系统的鼠标事件。
例如,在 Windows 纸牌游戏中,对屏幕的简单触摸会立即突出显示触摸的卡片。在我的应用程序中,只有当我触摸它并稍微移动我的手指时,按钮才会变为向下状态(点击事件 - 向下和向上 - 触发正常)
MOUSE_DOWN 事件触发不应该与新的 touchevent 类中的 TOUCH_BEGIN 完全一样吗?
有任何想法吗?
javascript - 为每个元素添加一个额外的点击事件(JavaScript / jQuery)
我正在开发一个触摸屏应用程序,除此之外,它还会记录屏幕使用的次数,以便在预定义的点击次数后提醒用户清洁屏幕。
我已经很好地编写了点击函数,我现在需要的是确保在点击时调用该函数。
我想$('*').click(function() { //do something });
会实现我的目标,但这是最好的方法吗?另外,这会覆盖分配给元素的其他点击功能吗?
java-me - 检测是否有触摸设备
我正在使用Kuix UI 工具包编写 MIDlet,我想根据当前设备是否为触摸屏设备来更改工具包。(这些更改包括使按钮更大,以便于点击。)
有没有办法使用 J2ME (MIDP 2) 检测设备是否有触摸屏?
[编辑] 作为一种(糟糕的)解决方法,我改为检查屏幕高度。屏幕宽度高于 240 的高度可能是触摸屏...如果有更有效的方法,请告诉我。
.net - 更改 .NET 触摸屏应用程序的下拉菜单大小
我正在尝试创建一个 .NET 触摸屏应用程序。我希望能够创建一个大的下拉列表。通过增加字体大小,按钮的宽度保持不变,但高度增加,这意味着它又长又细。有没有办法“放大”.NET 控件,使它们对于触摸屏应用程序来说尺寸很大?
iphone - 触摸时的 UISegmentedControl 色调颜色
我的应用程序中有一个 UISegmentedControl(参见下面的代码):
但是当你点击它时我不能让它显示一些东西......
它在功能上完美地工作,但我希望当你点击它时它会变成灰色(但只是当你点击时)......这可能吗?
谢谢,
哥提。
wpf - WPF touchScreen ListBox 控件设计
我需要允许用户在鼠标按下时选择列表框中的项目,当用户向上或向下拖动时,我需要滚动列表框中的项目,因为用户与列表框触摸屏交互,我想要一些类似的东西iPod行为。用户应该能够触摸/抓取该项目并向上或向下拖动以滚动列表框。
jquery - 尝试用 jQuery 实现滚动惯性
我正在尝试将一些 iPhone 样式的滚动惯性添加到只能在 iPad 上查看的网页。
我的滚动在一个方向(scrollLeft
)上工作,但它在另一个方向上不起作用。这是一个非常简单的功能:
我已经将它绑定到touchend
身体上的事件。惯性是触摸结束时旧 moveX 位置与最新 moveX 位置之间的差异。
然后我尝试为scrollLeft
包含一堆缩略图的 div 的属性设置动画。正如我所说,这在向左滚动时有效,但在向右滚动时无效。
有任何想法吗?
iphone - iPad/iPhone 接触点是否会因校准而出错?
我有一个使用整个屏幕的 iPad 应用程序(也就是说,UIStatusBarHidden
在 Info.plist 文件中设置为 true)。主窗口和主视图的框架设置为 (0, 0, 768, 1024)。主视图启用了多点触控。
视图控制器有这个代码来处理触摸:
当我在模拟器中运行该应用程序时,它几乎可以正常工作。当我将鼠标从屏幕的一个边缘移动到另一个边缘时,报告的 X 值从 0 到 767。报告的 Y 值从 20 到 1023。(这是一个已知问题,模拟器不报告顶部的触摸20 像素的屏幕,即使没有状态栏。)
奇怪的是: 当我在实际的 iPad 上运行应用程序时,X 值按预期从 0 变为 767,但报告的 Y 值从 -6 变为 1017,而不是我预期的 0 到 1023。
它似乎在模拟器上正常工作的事实让我怀疑真实设备的触摸屏没有完美校准,而我的只是报告 Y 值偏离了 6 个像素。任何人都可以验证是这种情况吗?否则,还有什么可以解释 Y 值与我预期的相差 6 个像素的原因吗?
(几天后,我应该有第二台 iPad,所以我可以用另一台设备测试它并比较结果。)
macos - 在 OS X 中以编程方式模拟鼠标输入
是否可以从 OS X 中的程序模拟鼠标的动作?具体来说,简短的版本是我正在尝试使用两个网络摄像头来模拟触摸屏。因此,假设我可以获得 X、Y 位置,我可以通过鼠标移动或单击将信息发送到操作系统吗?
编辑-或者如果在另一个操作系统中特别容易,我愿意考虑。