Używam programu scene2d w bibliotece libgdx do tworzenia niektórych interfejsów w mojej grze.Dlaczego tabela Libgdx nie akceptuje akcji skalowania?
Użyłem tabeli i chcę wykonać jakąś czynność skalowania, gdy użytkownik dotknie, aby przycisk dotykał zmysłu.
Kiedy użyłem dowolnego innego rodzaju "Aktora", takiego jak Grupa, i podając akcję skalowania, działa, ale nie Tabela.
to jest moja definicja Tabela:
Table table = new Table();
table.setSize(width, height);
table.setPosition(x, y);
table.setOrigin(width/2, height/2);
table.add(new Label(...));
table.row();
...
I w moim przypadku Touchdown daję mu działanie skalę:
table.addAction(Actions.scaleTo(0.8f, 0.8f, 0.1f));
I Touchup daję kolejną akcję, aby uzyskać oryginalną skalę:
table.addAction(Actions.scaleTo(1f, 1f, 0.1f));
Jak już powiedziałem ten kod działa dla innych typów aktorów, takich jak Obraz i Grupa. Jakieś pomysły, dlaczego nie pasuje do stołu?
W najnowszej wersji biblioteki (0.9.8) 'setTransform' wydaje się być brakuje, ale możesz zamiast tego wywołać 'setClip (true)', które umożliwia transformację jako efekt uboczny. – Nick
@Nick - setTransform nadal istnieje poniżej 0.9.8. Jest to metoda 'Group' http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/scenes/scene2d/Group.html#setTransform%28boolean%29 – Pool
Pracowała dla mnie, thanx! –