如何在不使用texturepacker的情况下向Libgdx中的文本按钮添加图像?
您好,我正在使用libgdx开发一款Android游戏。我已经使用默认的uiskin atlas和json文件创建了主菜单按钮。问题是我不完全理解如何将按钮图像从当前默认的灰色更改为灰色。例如,我为退出按钮创建了一个退出图像,但如何将该图像添加到主菜单中的退出按钮?我已经从主精灵表中创建了退出图像的纹理区域,但找不到任何允许我将其附加到按钮的内容。谢谢 到目前为止,这是我的代码如何在不使用texturepacker的情况下向Libgdx中的文本按钮添加图像?,libgdx,Libgdx,您好,我正在使用libgdx开发一款Android游戏。我已经使用默认的uiskin atlas和json文件创建了主菜单按钮。问题是我不完全理解如何将按钮图像从当前默认的灰色更改为灰色。例如,我为退出按钮创建了一个退出图像,但如何将该图像添加到主菜单中的退出按钮?我已经从主精灵表中创建了退出图像的纹理区域,但找不到任何允许我将其附加到按钮的内容。谢谢 到目前为止,这是我的代码 Skin skin = new Skin(Gdx.files.internal("data/ui/uiskin.jso
Skin skin = new Skin(Gdx.files.internal("data/ui/uiskin.json"));
exit = new TextButton("Exit",skin);
exit.setPosition(0,0);
exit.setSize(60, 60);
stage.addActor(exit);
exit.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
System.exit(0);
}
});
我建议在皮肤、质地和气味方面多挖一点。请参考这一点,在StackOverflow中,他们提供了关于皮肤是什么以及如何使用皮肤的一些描述 皮肤包含您可以使用的所有可绘制内容的定义,以及字体和其他内容。如果不想使用纹理打包器修改皮肤,只需修改图像文件,然后更改指定区域的JSON即可。使用纹理封隔器可以提供以下信息:
在默认皮肤的情况下,它被称为:uiskin.json并“指向”一个TexturePack图像uiskin.png。打开png文件时,您将找到json文件中定义的所有区域。非常感谢。昨晚我又看了一遍,意识到我必须创造出自己的皮肤。一开始看起来很复杂,但atlas文件基本上从png获取图像位置,json文件类似于css样式。您也可以从空文件开始,只需在开始时添加部分。此外,此链接还包含有关皮肤JSON格式的一些信息: