【问题标题】:How to execute methods in Java in a certain order without using a main method?如何在不使用 main 方法的情况下按特定顺序执行 Java 中的方法?
【发布时间】:2013-08-04 02:33:49
【问题描述】:

这有点像 LibGDX。它有一个 Application 接口和一个 ApplicationListener 接口。方法 create()、render()、pause()、resume() 和 dispose() 以某种方式神奇地执行(至少在我看来是这样),而无需在任何地方调用。这怎么可能?我错过了什么?我对 Java 有基本的了解,但也许我错过了一些东西。

可以在https://github.com/libgdx/libgdx/tree/master/gdx/src/com/badlogic/gdx查看源代码

【问题讨论】:

    标签: java libgdx


    【解决方案1】:

    这里是使用 libGDX 编写应用程序的教程: https://code.google.com/p/libgdx/wiki/ApplicationConfiguration

    正如示例应用程序所述,您实际上需要编写 自己创建一个主方法并创建一个 LwjglApplicationthere 指定您的 ApplicationListener:

    public class MyFirstTriangleDesktop {
        public static void main (String[] argv) {
            LwjglApplicationConfiguration cfg = new LwjglApplicationConfiguration();
            cfg.title = "my-gdx-game";
            cfg.useGL20 = false;
            cfg.width = 480;
            cfg.height = 320;
    
            new LwjglApplication(new MyGdxGame(), cfg);           
        }
    }
    

    你可以看到你提到的方法是如何被源文件中的 LwjglApplication 类调用的:https://github.com/libgdx/libgdx/blob/master/backends/gdx-backend-lwjgl/src/com/badlogic/gdx/backends/lwjgl/LwjglApplication.java

    已编辑:更新了已弃用的教程链接

    【讨论】:

      【解决方案2】:

      您需要使用 LibGDX 框架提供的“运行器”。例如,有些运行器设计为作为普通 Java 应用程序、Android 应用程序、GWT 应用程序或(显然)iOS 应用程序运行。

      参考文献:

      ...或者您可以编写自己的简单启动器:请参阅 Lake 的答案。

      【讨论】:

        猜你喜欢
        • 2011-11-27
        • 2012-01-26
        • 2013-02-16
        • 2011-04-18
        • 2015-01-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-18
        相关资源
        最近更新 更多