2016-08-22 2 views
4

Я создаю меню (например, это птица-птица, когда вы умираете, она появляется на экране воспроизведения). Я создал класс, который расширяет таблицу, и я хочу установить фон таблицы в белый. Есть ли способ сделать это?Libgdx | Scene2d | Установить цвет фона таблицы?

+1

Вы должны держать чистую белую текстуру область в текстуру атласа, которые могут быть использованы для создания чистого цвета TextureRegionDrawables. Установите белый TextureRegionDrawable в качестве фона вашего стола. – Tenfour04

ответ

1

Решил проблему, используя метод setBackground (Drawable drawable) для таблицы. Я создал анонимный класс drawable и создал спрайт внутри того, который отображается в методе draw для анонимного класса.

+1

вы можете показать код, пожалуйста? Спасибо. –

+0

код пожалуйста ...... –

+0

где код –

4

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

Вот реализация аналогичного решения, за исключением того, что класс будет доступен для конкретизации (так что цвет фона таблицы можно изменить позже легко):

https://www.snip2code.com/Snippet/2615417

BackgroundColor backgroundColor = new BackgroundColor("white_color_texture.png"); 
backgroundColor.setColor(2, 179, 228, 255); // r, g, b, a 
table.setBackground(backgroundColor); 

Итак, создайте экземпляр произвольного класса BackgroundColor (связанного выше), предоставив конструктору имя файла из белого PNG из ваших ресурсов проекта (например, что сказал @ Tenfour04 в комментарии выше).

Если вы не знакомы с последней частью, см. Ссылку репо, указанную ниже, где можно найти пример такого PNG-файла.

Теперь используйте метод setColor экземпляра (красный, зеленый, синий, альфа), затем передайте экземпляр в таблицу libGDX, используя метод setBackground (Drawable drawable).

Это не должно быть идеальным решением для всех - при необходимости измените.

Резервное копирование:

https://github.com/ronrihoo/libGDX-Table-Background-Color

Смежные вопросы