Я хочу, чтобы сенсорная панель LibGDX переместилась в другое место, если я коснусь другого места на экране, но я хочу, чтобы она немедленно использовалась - PullRequest
0 голосов
/ 11 апреля 2019

У меня есть программа LibGDX, в которую я добавил сенсорную панель при запуске программы в Android.Тачпад работает по желанию.

Я настроил его так, чтобы, если я коснусь области экрана, которая не является сенсорной панелью или какими-либо кнопками пользовательского интерфейса, он переместит сенсорную панель в это место.Эта часть работает правильно, а также.

Однако , чтобы использовать тачпад после перемещения его в новое место, я должен поднять палец, а затем опустить его обратно.Я не могу начать перетаскивать, чтобы использовать тачпад, когда я помещаю палец в новое место.

Создание сенсорной панели выполняется совершенно стандартным способом:

touchpad = new Touchpad(5, touchpadStyle);

Перемещение сенсорной панели выполняется здесь:

@Override
public boolean touchDown(int screenX, int screenY, int pointer, int button) {
    Vector3 vec = new Vector3(screenX, screenY, 0);
    uiStage.getCamera().unproject(vec);
    touchpad.setPosition(vec.x-touchpad.getWidth()/2, vec.y - touchpad.getHeight()/2);
    return false;
}

Я рассматривал возможность расширения сенсорной панеликласс, но я не был уверен, можно ли это сделать таким образом, и / или есть ли более простой способ сделать это, которого я просто еще не обнаружил.

Заранее спасибо!

...