java - Android libgdx : splash screen not showing immediately after launcher icon pressed

标签 java android libgdx

我正在编写一个 libgdx 游戏,但游戏启动后没有立即显示启动画面。我正在使用 Assets 管理器在后台加载资源。有谁知道这是怎么来的? 它仅在游戏启动时显示黑屏,然后在 5-6 秒后,当资源加载到内存中时,它会显示闪屏一秒钟,然后显示主屏幕。

这是我的类(class)。

public class SplashScreen implements Screen {

  private SpriteBatch batch;
  private Texture logo;
  private BabyGame game;
  private MyAssetManager myAssetManager;
  public SplashScreen(BabyGame game) {
    this.game = game;
    myAssetManager = new MyAssetManager();
  }
  @Override
  public void show() {
    batch = new SpriteBatch();
    logo = new Texture("bg.png");
  }
  @Override
  public void render(float delta) {
    Gdx.gl.glClearColor(0.8f, 0.8f, 1, 1);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
    batch.begin();
   batch.draw(logo,0,0,Gdx.graphics.getWidth(),Gdx.graphics.getHeight());
    batch.end();

    if (myAssetManager.update())
        game.setScreen(new BabyOrange(game));

}

这是游戏类

 public class BabyGame extends Game
 {
 AdService adService;
 MyAssetManager assetManager;
 public BabyGame(){
    assetManager = new MyAssetManager();
 }
 @Override
 public void create() {
    setScreen(new SplashScreen(this));
 }
}

和 Assets 类别

public class MyAssetManager {
public  AssetManager manager;
public  MyAssetManager(){
    manager = new AssetManager();
}
public void load(){
    manager.load("background-orange.png",Texture.class);
    manager.load("orange-phone.png",Texture.class);
    manager.load("buttons.txt", TextureAtlas.class);
    manager.load("bgAudio.mp3", Music.class);
    manager.finishLoading();

}
public boolean update(){
    return manager.update();
}
}

最佳答案

     You can add Handler() Method in :
     new Handler().postDelayed(new Runnable() {
    @Override
     public void run() {
      startActivity(new Intent(SplashActivity.this,MainActivity.class));
       finish();
        }
             }, 1000);
              And also please check the size of the images.

关于java - Android libgdx : splash screen not showing immediately after launcher icon pressed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55951285/

相关文章:

java - LIBGDX And​​roid - 按钮监听器不工作

java - 如何将 TextField 导出为相同格式的文本文件?

java - JTable 在 JPanel 中不可见

java - org.openqa.selenium.SessionNotCreatedException : A new session could not be created.(原始错误: 'java -version' failed.错误:spawn ENOENT)

android - 从联系人获取照片

android - API 15 中的 menuItem.getActionView() == null

android - GL_MAX_TEXTURE_SIZE 较低的 Android 设备上的纹理不佳

java - LIBGDX 在一个屏幕上制作 5 个不同的按钮

java - 当webview页面不同时如何从java调用javascript函数

java - 正则表达式 - 用逗号(引号中的逗号除外)和换行符(\n 或\r)分割字符串