Я делаю Idle Game, но теперь я не знаю, как сделать слушателей HUD. Можно ли создать экземпляр InputListener() в каждой кнопке моего hud? Мне нравится 20 кнопок или актеров.LibGDX-Scene2D: Как сделать хад с несколькими кнопками?
ответ
Просто используйте addListener()
метод для каждого актера, которым вы хотите быть clicable. Для этой цели я использовал ClickListener, хотя иногда рекомендуется использовать ChangeListener из-за лучшего поведения, когда кнопка отключена.
Так что вам нужно сделать, это просто
Button button;
//creating button...
button.addListener(new ClickListener(){
@Override
public void clicked(InputEvent event, float x, float y)
{
//Do something
}
});
и то же самое для других кнопок/актеров на вашей сцене HUD.
Вы также можете указать take a look at this thread, где я спросил о выполнении многих слушателей.
Эта тема мне очень помогла, спасибо –
Вот кнопка scene2d, которая очень проста в использовании, я не понимаю, в чем проблема или почему вы беспокоитесь о том, что слушатель на каждой кнопке или объекте пользовательского интерфейса выглядит для меня довольно логичным.
button = new Button(buttonStyle);
button.setPosition(x, y);
button.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
Gdx.app.log(TAG, "Button clicked");
};
});
- 1. действия с несколькими кнопками
- 2. Текст с несколькими кнопками
- 3. NSStatusItem с несколькими кнопками
- 4. Форма с несколькими кнопками
- 5. Уведомление с несколькими кнопками
- 6. timePicker с несколькими кнопками
- 7. Работа с несколькими кнопками
- 8. getElementById с несколькими кнопками
- 9. Элемент списка с несколькими кнопками
- 10. Управление несколькими композициями с несколькими кнопками
- 11. Как поддерживать бесконечный цикл с несколькими кнопками?
- 12. Совместимость с несколькими кнопками Android
- 13. UITableview CommitEditingStyle с несколькими кнопками?
- 14. Rspec с несколькими кнопками формы
- 15. Управление несколькими контроллерами с кнопками
- 16. Проблема с несколькими кнопками gui
- 17. Отправить форму с несколькими кнопками
- 18. Как создать формы с несколькими кнопками отправки
- 19. NSMatrix с несколькими кнопками переключения?
- 20. Android: Элементы ListView с несколькими кнопками с кнопками
- 21. Скрыть DIV с несколькими кнопками
- 22. Android списка с несколькими кнопками
- 23. андроидный виджет с несколькими кнопками
- 24. Как открыть модальные кнопки с несколькими кнопками?
- 25. Redux Form: Как работать с несколькими кнопками?
- 26. Как работать с несколькими кнопками на Setclick?
- 27. Управление несколькими кнопками отправки
- 28. Использование onclick с несколькими кнопками с JavaScript
- 29. Проектирование макета с несколькими кнопками и кнопками изображения
- 30. Как сделать изображения кнопками?
Почему нет? ....... – Tenfour04
Я имею в виду, это единственный вариант? Поскольку мне нужно получить доступ к переменным и функциям «кнопки» из метода touchDown из класса InputListener (я знаю, что могу получить доступ, но мне нужно передать параметры или создать внутренний класс, расширяющий InputListener и т. Д.). Это похоже на много кода, представьте себе 20 кнопок, создающих расширенные классы InputListener, каждый класс со своим кодом только для одной кнопки –
Я действительно не понимаю вашу проблему. Похоже, у вас запутанная настройка. Слушателю нужно только вызвать один метод в 'touchDown'. Вы можете альтернативно назначить один и тот же прослушиватель каждой кнопке и проверить метод 'touchDown'' event.getListenerActor() 'для всех ваших кнопок, чтобы решить, какой метод вызывать. Если вы хотите, чтобы ваши кнопки больше походили на кнопки операционной системы (отмените нажатие, перетащив кнопку и отпустив), используйте ChangeListener вместо InputListener и используйте 'changed' вместо' touchDown', чтобы ответить на него. – Tenfour04