微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Libgdx Android- 为什么我的 Button 小部件很大并且超过了 Table 小部件?

如何解决Libgdx Android- 为什么我的 Button 小部件很大并且超过了 Table 小部件?

我用过 Libgdx。我对 Scene2d 和 Scene2d.ui 还是个新手,因为我试图制作菜单屏幕。在 IntelliJ IDE 中,使用 Libgdx 框架,我正在尝试制作一个 android 应用程序。由于我使用的是屏幕,因此我将应用程序适配器更改为游戏,并且在 create 方法中,我创建并设置了我制作的屏幕,即 HomeScreen 类。这个类的构造函数有如下代码

//Creating and Initialising fields
camera = new OrthographicCamera();
viewport = new ExtendViewport(50,100,camera);
stage = new Stage();
table = new Table();
skin = new Skin(Gdx.files.internal("Glassy Skin/glassy-ui.json"));

//More Setup
stage.setViewport(viewport);
table.setFillParent(true);
stage.addActor(table);
table.setDebug(true);
table.setSize(50,100);

tableSetup();

tableSetup() 方法如下所示:

        TextButton button = new TextButton("Test",skin);
        button.addListener(new ClickListener(){
            @Override
            public void clicked(InputEvent event,float x,float y){
                System.out.println("CLICKED");
            }
        });
        table.add(button).expandX();

此外,我确实将舞台设置为 HomeScreen 类的 show 方法中的输入处理器。当我运行我的代码时,为了尝试显示一个带有文本“test”的玻璃皮肤文本按钮,我得到了这个:The Glassy Skin TextButton really zoomed in. 使用相机上的缩放功能,我能够看到虽然表格小部件的大小等于屏幕,但表格单元格要大得多并且超过了表格小部件的大小。我尝试使用 table.add(button).width(50),但没有这样做。我什至尝试过 table.add(button).prefSize() 和 table.add(button).maxSize()。有人可以帮我弄清楚为什么会这样吗?另外,请尽量用简单的文字/语言来解释,因为我只是在读高中。

编辑:我转到另一个项目并尝试添加舞台、表格和按钮。显然,当添加标签而不是按钮时,它不会太大,但是当我尝试按钮时,按钮很大!我不知道如何固定按钮的大小,这才是真正的问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?