Java LibGDX在手机打开和关闭后渲染

Java LibGDX在手机打开和关闭后渲染,java,android,libgdx,Java,Android,Libgdx,我目前正在Android上开发一款LibGDX游戏,但当我在PC(桌面版)上启动它时,它可以正常工作,但一旦我在手机上打开它(它连接到我的PC并打开开发者模式),它首先会显示glClear颜色,而不是它用来显示的精灵和对象 但当我打开和关闭手机(再次待机/打开)时,它确实会显示桌面版上的所有精灵和对象 截图: 这是我的主类中的代码(仅限render方法) 我的GameScreen类(等于上述方法中的currentscreen) 再一次,它在PC上也能正常工作,而且在我打开和关闭手机时也能正常

我目前正在Android上开发一款LibGDX游戏,但当我在PC(桌面版)上启动它时,它可以正常工作,但一旦我在手机上打开它(它连接到我的PC并打开开发者模式),它首先会显示glClear颜色,而不是它用来显示的精灵和对象

但当我打开和关闭手机(再次待机/打开)时,它确实会显示桌面版上的所有精灵和对象

截图:

这是我的主类中的代码(仅限render方法)

我的GameScreen类(等于上述方法中的currentscreen)

再一次,它在PC上也能正常工作,而且在我打开和关闭手机时也能正常工作。当然,当我要发布游戏的时候,在你开始玩之前必须打开和关闭手机是不好的。然而,update()方法(参见main类中的代码)在屏幕其余部分为黑色时似乎确实有效


希望有人能帮我

您是否尝试过使用
AssetManager
加载纹理?也许你在内存中加载它们的方式不好。顺便说一句,我希望你的纹理不是声明为静态的。@Kush我用AssetManager试过了,但仍然不起作用。我的纹理不是静态的。
@Override
public void render () {
    super.render();
    Gdx.gl.glClearColor(0, 0, 0, 1);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
    if(sm.getCurrentScreen() != null){
        update();
        sm.getCurrentScreen().render(sb);
    }

}
    @Override
public void render(SpriteBatch sb) {
    sb.begin();
    sb.setProjectionMatrix(camera.combined);
    sb.draw(TextureManager.background, 0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    em.renderEntities(sb);

    sb.end();
}