一起Talk Android吧(第三百一十一回:创建程序启动界面Splash Screen二)

本文介绍了在Android中创建程序启动界面的两种方法:通过修改主题和使用AST模板。通过将FullscreenActivity设置为LauncherActivity,并在Java代码中使用线程延迟跳转到主界面,隐藏ActionBar。探讨了去除ActionBar的两种方式,一种是配置主题,另一种是通过Java代码调用hide()方法。文章强调了保持兼容性的重要性,并总结了创建启动界面的基本步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

各位看官们,大家好,上一回中咱们说的是Android中创建程序启动界面的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧!


看官们,上一章回中我们通过修改程序的主题来创建程序启动界面,本章回中我们再介绍一种创建程序启动界面的方法,具体步骤如下:

  • 1.创建一个EmptyActivity的工程,此工程中只有一个主界面:MainActivity;
  • 2.创建一个Fullscreen Activity,同时将其设置为Launcher Activity,具体操作为:在AndroidManifest.xml文件中把MainActivity和FullscreenActivity互换;

注意这里使用了AST中自带的Activity模板,具体操作如下:File ->New -> Activity -> Fullscreen Activity,此操作是在AST 4.0版本上进行的,版本不同操作细节上可能会有差别。

  • 3.在Fullscreen Activity的代码中启动一个线程,让该线程暂停1s,然后跳转到程序主界面中,上一章回的例子中介绍过,这里不再列出代码。


保存代码并且运行程序就可以看到一个覆盖整个屏幕并且没有ActionBar的界面,我们在这里就不演示程序运行结果了,大家可以自己动手实践。


我们在上一章回中通过配置主题去掉了Activity上的ActionBar,在这里使用的是AST提供的模板去掉了ActionBar,其中的原理是什么?是不是也是使用了主题?我们带着好奇心查看主题的代码后并没有在主题中发现去掉ActionBar的代码,那么只能是在代码中去掉的。我们跟着这个思路打开了FullscreenActivity的java代码,通过查找和分析,发现它使用了一个叫hide()的方法来去掉ActionBar的,该方法的核心代码如下:

        ActionBar actionBar = getSupportActionBar();
        if (actionBar != null) {
            actionBar.hide();
        }


代码中首先获取了ActionBar,然后通过ActionBar的hide()方法隐藏了ActionBar.因此可见AST的模板是通过Java代码去掉ActionBar的。


对比一下这两种方法就会发现,它们在创建程序启动界面时都去掉了ActionBar,那么这个ActionBar是如何添加到程序中的呢?其实早期的Activity中是没有ActionBar的,它是在AppCompatActivity中引入的,当我们创建工程时MainActivity默认继承AppCompatActivity,因此在界面上会显示ActionBar.如果我们让MainActivity继承Activity时,界面上就不会显示ActionBar。虽然这样也可以实现全面覆盖屏幕的效果,但是在实际项目中不建议这么操作,因为这会破坏程序的兼容性。

最后我们总结一下创建程序启动界面的整体思路:

  • 1.必要步骤是去掉Activity上的显示的ActionBar;方法有两种:配置主题或者通过Java代码隐藏;
  • 2.主要逻辑是让当前进程暂停一段时间然后再跳转到主程序界面上;


各位看官,关于Android中创建程序启动界面的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

talk_8

真诚赞赏,手有余香

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值