Java 在一个Json皮肤中使用多个字体

Java 在一个Json皮肤中使用多个字体,java,json,libgdx,bitmap-fonts,Java,Json,Libgdx,Bitmap Fonts,我正在使用一个皮肤作为菜单,我想知道是否有可能在这个皮肤上添加几种字体,然后选择编程使用的字体 目前,我设置了字体并将其添加到标签样式中,如下所示: "com.badlogic.gdx.graphics.g2d.BitmapFont": { "fontTest": { "file": "outline_test.fnt" } }, "com.badlogic.gdx.scenes.scene2d.ui.Label$LabelStyle": { "

我正在使用一个皮肤作为菜单,我想知道是否有可能在这个皮肤上添加几种字体,然后选择编程使用的字体

目前,我设置了字体并将其添加到标签样式中,如下所示:

"com.badlogic.gdx.graphics.g2d.BitmapFont": {
        "fontTest": { "file": "outline_test.fnt" }
    },

    "com.badlogic.gdx.scenes.scene2d.ui.Label$LabelStyle": {
        "default": {
            "font": "fontTest", "fontColor": "white"
        }
    }, 
这意味着当我创建一个标签时,我需要做的就是得到这种字体:

Label rating = new Label("Rating: ", skin);

这将选择设置为默认的LabelStyle,是否有方法引用Json文件中设置的LabelStyle,以便我可以选择在Java代码中使用哪种样式?或者我需要创建单独的外观吗?

是的,您可以在外观文件中添加几种字体样式

假设您想创建一个名为“myStyleFontTest”的标签样式,它使用不同的字体

"com.badlogic.gdx.graphics.g2d.BitmapFont": {
        "fontTest": { "file": "outline_test.fnt" },
        "myStyleFontTest": { "file": "myStyle.fnt" }
    },

    "com.badlogic.gdx.scenes.scene2d.ui.Label$LabelStyle": {
        "default": {
            "font": "fontTest", "fontColor": "white"
        },
        "myLabelStyle" :  {
            "font": "myStyleFontTest", "fontColor": "red"
        }
    }, 
现在,当您创建一个新标签时,您所要做的就是

Label testLabel = new Label(text, skin, "myLabelStyle")

我想也许你把它弄混了一点,把样式放在BitmapFonts下了?很好,明白你的意思:)很好,谢谢!