LibGDX actor clickListener

402
17 мая 2017, 06:23

Есть два Stage. В одном из них:

 private ImageButton imageButton;
 ....
 imageButton.addListener(new ClickListener() {
        public void clicked(InputEvent event, float x, float y){
            System.out.println("FCK YEAH!");
        }
    });

И все отлично работает. В другом:

private Some some;//наследуется от актера
....
some.addListener(new ClickListener() {
        public void clicked(InputEvent event, float x, float y){
            System.out.println("CLICKED!");
            };
        }
    });

Ничего не работает.

Понимаю, что проблема именно в том, что чего-то не хватает в классе Some. Собственно вопрос: какие именно методы должны быть перегружены для корректной работы? hit()? touchDown()/touchUp()?

Answer 1

1) ClickListener'ы актёров работают только если текщий InputProcesser это сцена на которой они находятся.
2) Чтобы они работали также необходимо задать размеры и положение актёра.

Скорее всего что-то из этого у вас не сделано.

READ ALSO
Сохранение текста кнопки в JSON

Сохранение текста кнопки в JSON

Есть несколько однотипных кнопок Button в приложении, изначально они прописывались обычным способом:

421
Создание экземпляра класса Graphics в java

Создание экземпляра класса Graphics в java

Изучаю рисование в javaВезде в примерах показывают рисование на основной панели окна

426
Android POST запрос iii

Android POST запрос iii

Всем привет, нужна помощь с POST запросамиВообщем, есть голосовой ассистент "Дуся"

378
NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference

NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference

Построил приложение для запроса и парсинга JSON, но не могу найти, где допустил ошибкуТо ли в адаптере, то ли еще где-то

847