-1

最近、LibGdx の学習を始めました。スプラッシュ スクリーンを作成しました。デスクトップでは問題なく動作しますが、Androidエミュレーター/シミュレーターまたはAndroidモバイルで実行しようとすると実行されません。黒い画面しか表示されません。これについて私を助けてください。このクエリにプロジェクトへのリンクを添付しました。

https://docs.google.com/file/d/0B38mBPsRVO3ScU83M1dXblItS00/edit?usp=sharing

ここにコードを追加しています Android アプリケーション

AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.useGL20 = true;

主な LibGdx プロジェクト コード

public void show() {
    batch = new SpriteBatch();

    Texture splashTexture = new Texture("image/splash.PNG");
    splash = new Sprite(splashTexture);
    splash.setSize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

}

public void render(float delta) {
    Gdx.gl.glClearColor(0, 0, 0, 1);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

    batch.begin();
    splash.draw(batch);
    batch.end();
}

シンプルなスプラッシュ スクリーン コードです。私はネットで調査を行いましたが、これで役立つものは何も見つかりませんでした。これについて私を助けてください。

4

2 に答える 2

1
@Override
public void show() {
 manaer=new AssetManager();
    batch = new SpriteBatch();

    manager.load("Image/splash.PNG",Texture.class);
    manager.finishLoading();
    Texture splashTexture = manager.get("Image/splash.PNG",Texture.class);
    splash = new Sprite(splashTexture);
    splash.setSize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

}

問題は、アセットが描画される前に完全にロードされていないことです。したがって、 manager.finishloading() を使用して、イメージがロードされるまでコードの実行を強制的に停止させます

于 2013-09-17T11:15:00.873 に答える