gpt4 book ai didi

android - touchDragged 在 libgdx 中如何工作?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:34:45 25 4
gpt4 key购买 nike

我目前正在学习 libgdx 游戏编程,现在我已经学会了如何使用 touchDown 但我不知道如何使用 touchDragged。计算机如何知道手指被拖动的方向(用户是否向左或向左拖动)对)

最佳答案

计算机不知道。或者至少界面不会告诉你这些信息。它看起来像这样:

public boolean touchDragged(int screenX, int screenY, int pointer);

它几乎和 touchDown 一样:

public boolean touchDown(int screenX, int screenY, int pointer, int button);

touchDown 事件发生后,只有 touchDragged 事件会发生(对于同一指针),直到 touchUp 事件被触发。如果你想知道指针移动的方向,你必须通过计算最后一个触摸点和当前触摸点之间的增量(差异)来自己计算。这可能看起来像这样:

private Vector2 lastTouch = new Vector2();

public boolean touchDown(int screenX, int screenY, int pointer, int button) {
lastTouch.set(screenX, screenY);
}

public boolean touchDragged(int screenX, int screenY, int pointer) {
Vector2 newTouch = new Vector2(screenX, screenY);
// delta will now hold the difference between the last and the current touch positions
// delta.x > 0 means the touch moved to the right, delta.x < 0 means a move to the left
Vector2 delta = newTouch.cpy().sub(lastTouch);
lastTouch = newTouch;
}

关于android - touchDragged 在 libgdx 中如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23731073/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com