【问题标题】:LibGDX Resize Event Only Fires When Window Is Made LargerLibGDX 调整大小事件仅在窗口变大时触发
【发布时间】:2015-11-12 20:22:01
【问题描述】:

所以我对 LibGDX 有一个我无法弄清楚的问题。我有一个在 LibGDX 中编程的游戏,它在 Windows 7 的桌面上运行。当玩家调整窗口大小时,我试图重新定位各种 GUI 元素。我的代码工作得很好,但是 resize 事件仅在窗口变大时触发。如果玩家离开窗口边缘后窗口的总尺寸变小了,则永远不会调用 resize 方法。

我查看了 LibGDX 中的代码,以确定是否应该触发 resize 事件,但我无法确定是否有任何东西阻止了 resize 事件。即使窗口变小,resize 事件也应该触发。有人对我应该尝试什么有任何建议吗?或者有人听说过吗?

编辑:我已经从顶级 ApplicationAdapter 中的 resize 方法登录到控制台。我还在 resize 方法中设置了一个断点,以获取堆栈跟踪以查看调用 resize 方法的 LibGDX 代码。但这些都没有帮助。

【问题讨论】:

  • 您是否使用控制台日志检查了它是否在您的顶级 ApplicationAdapter 或 Game 类中触发?
  • 是的,我已经从顶级 ApplicationAdapter 中的 resize 方法登录到控制台。我还在 resize 方法中设置了一个断点,以获取堆栈跟踪以查看 LibGDX 代码。显然这些没有帮助。

标签: events libgdx resize


【解决方案1】:

你有 Viewport 吗?
如果是,是 ScreenViewport 吗?因为这是适合您情况的最佳视口。
记得补充:

viewport.update(width, height);
viewport.apply();

@Override
public void resize(int width, int height){}


希望对你有帮助!祝你好运!

【讨论】:

    猜你喜欢
    • 2021-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 2010-12-21
    • 1970-01-01
    • 1970-01-01
    • 2016-10-31
    相关资源
    最近更新 更多