【问题标题】:Velocity Tracker accounting for screen pixel density考虑屏幕像素密度的速度跟踪器
【发布时间】:2014-01-14 13:20:36
【问题描述】:

使用Android的VelocityTracker跟踪MotionEvents时,是否需要考虑屏幕密度才能返回“密度无关速度”?

velocityTracker.computeCurrentVelocity(1); // pixels per milliseconds
float velocityY = velocityTracker.getYVelocity();

我是否必须将此velocityY 与屏幕比例因子相乘,以便我可以在所有设备上跟踪相同的物理手势速度?

【问题讨论】:

    标签: android motionevent density-independent-pixel


    【解决方案1】:

    对于您可能有的大多数用途,您无需担心。

    让我们考虑滚动自定义视图的情况:如果用户将手指移动 1 厘米,则可能是 100 像素或 400 像素,具体取决于屏幕密度。无论如何,您要移动的是将绘图移动相同数量的像素,而不是缩放它们。

    如果您正在编写游戏并且用户拖动手指的距离表示他们将用于执行某些操作的力量,则可能是一个例外。在这种情况下,调整屏幕密度可能是公平的。

    总结:如果你想更新界面,你不需要担心。如果你想用这个速度做什么独立于屏幕,你可能需要调整它。

    【讨论】:

    • 这是一个很好的答案。我正在研究需要在任何设备上具有相似速度的东西,因此我将调整屏幕密度。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2023-02-17
    • 2022-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-04
    相关资源
    最近更新 更多