当前位置: 首页 > 面试题库 >

黑屏之前的Android启动画面

卢元龙
2023-03-14
问题内容

我想在onCreate()方法中进行所有初始化时显示启动屏幕,但是我需要在屏幕上绘制内容的组件也在初始化,因此,当我启动应用程序时以及onCreate()之后,出现黑屏方法已完成,则仅绘制了第一个屏幕。与其使用黑屏,不如使用闪屏。

这是我在onCreate方法中的代码:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // Acquire a wakeLock to prevent the phone from sleeping
        PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);
        wakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "GLGame");

        // Setup all the Game Engine components 
        gameEngineLog = new WSLog("WSGameEngine");
        gameEngineLog.setLogType(this.gameEngineLogType);
        gameLog = new WSLog(this.gameLogTAG);
        gameLog.setLogType(this.gameLogType);
        io = new FileIO(this, getAssets());
        audio = new Audio(this);
        wsScreen = new WSScreen(this, this.screenResizeType, this.customTopYGap, this.customLeftXGap, this.gameScreenWidth, this.gameScreenHeight);
        graphics = new Graphics(this, wsScreen.getGameScreen(), wsScreen.getGameScreenextended());
        renderView = new RenderView(this, wsScreen.getGameScreen(), wsScreen.getGameScreenextended(), FPS, maxFrameskippes);
        input = new Input(this, renderView, logGameEngineInputLog);
        setContentView(renderView);

        if(useOfAnalytics == true) {
            getGameEngineLog().w(classTAG, "Analytics has been enabled");
            analytics = new Analytics(this);
        }

        // Check that the developer has initialized the assets
        if(this.assets == null) {
            this.gameEngineLog.w(classTAG, "The assets for the game haven't been defined!");
        }

    }

我应该如何实现启动屏幕,以避免一开始出现黑屏?


问题答案:

为该初始屏幕创建XML布局,并将其设置为在super.onCreate()之后的内容视图:

super.onCreate(savedInstanceState);
setContentView (R.layout.splash_screen);

那应该足够了。它将显示此初始屏幕,直到调用setContentView(renderView)为止。



 类似资料:
  • 主要内容:本节引言:,1.帧动画概念以及用法,2.使用示例:,3.本节示例代码和Gif帧提取工具下载,本节小结:本节引言: 从本节开始我们来探究Android中的动画,毕竟在APP中添加上一些动画,会让我们的应用变得 很炫,比如最简单的关开Activity,当然自定义控件动画肯定必不可少啦~而Android中的动画 分为三大类,逐帧动画(Frame)以及补间动画(Tween),还有Android 3.0以后引入的属性动画 (Property),而本节给大家带来的是第一种动画——逐帧动画的一个基本

  • 我对此进行了研究,发现有2+种方法:使用使用anim.xml文件,或者使用transition.xml文件的Transitions(来自android文档)... 我两个都试过,但都给了我不想要的结果: 对于动画:我得到了一个丑陋的中间过渡黑屏: style.xml 我的其他问题是我应该采用哪种方法?谷歌是否在启动新活动的动画上推动了过渡?

  • 我有一个和一个。当接收到广播时,两个活动都需要完成。但是,如果位于之上,下面的代码将导致黑屏。

  • 主要内容:本节引言:,1.补间动画的分类和Interpolator,2.各种动画的详细讲解,3.写个例子来体验下,4.动画状态的监听,5.为View动态设置动画效果,6.为Fragment设置过渡动画,7.为Activity设置过场动画,8.写个进入APP后登陆注册按钮从底部弹出动画效果的例子:,9.本节代码示例下载,本节小结:本节引言: 本节带来的是Android三种动画中的第二种——补间动画(Tween),和前面学的帧动画不同,帧动画 是通过连续播放图片来模拟动画效果,而补间动画开发者只需指

  • 我试图在飞溅之前消除白屏,所以我按照这些链接中提到的解决方案 如何修复应用程序启动时的白屏? 闪屏前的白色屏幕 我尝试了这里提到的几乎所有解决方案 其中包括将活动主题更改为: 或者把这个加入到我的主题中 但是实现其中任何一个都会在单击应用程序图标时冻结UI一段时间,之后一切按预期工作。 有没有人成功地修复了这个滞后。任何帮助将不胜感激。

  • 本文向大家介绍Android仿荷包APP启动动画,包括了Android仿荷包APP启动动画的使用技巧和注意事项,需要的朋友参考一下 用荷包App的时候发现启动动画做的挺好玩的,于是便模仿实现了一下。 gif效果图: animation.gif 实现思路: 仔细观察,可以看出动画的执行分为两个阶段: 第一阶段为硬币掉落。 第二阶段为钱包反弹。 布局xml文件如下: 硬币掉落: 硬币掉落的过程中执行两