1分钟教你App点击秒开技能

2,706 阅读1分钟

背景

刚开始开发应用,不少人没有注意到点击桌面图标打开App有短暂的白屏或者黑屏的情况,短暂的白屏或者黑屏多多少少会影响用户的体验。其实只要我们简单设置一下,你的App就没有了白屏或者黑屏,实现秒开的效果。哪里不会点哪里,So easy...

步骤一:设置启动页主题

//在style.xml添加一个启动页主题
<style name="LauncherTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowBackground">@drawable/bg_splash</item>
    <item name="android:fullBackupOnly">true</item>
    <item name="android:windowNoTitle">true</item>
    <item name="windowNoTitle">true</item>
    <item name="windowActionBar">false</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
    <item name="android:navigationBarColor">@android:color/transparent</item>
    <item name="android:screenOrientation">portrait</item>
    <item name="android:windowSoftInputMode">stateHidden</item>
    <item name="android:configChanges">orientation|keyboardHidden|screenSize</item>
</style>

步骤二:给启动页设置主题


<activity
    android:name=".LauncherActivity"
    android:theme="@style/LauncherTheme"
    android:screenOrientation="portrait">
    ...
</activity>

步骤三:设置启动页主题windowBackground样式

drawable/bg_splash.xml

注意:启动页的layout.xml也需要用同一个背景图

android:background="@drawable/bg_splash"

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="#ffffff">
    </item>
    
    <!-- 如果中间有其他样式,可以打开这个按照UI设计 -->
<!--    <item android:top="100dp">-->
<!--        <bitmap-->
<!--            android:gravity="top|clip_vertical"-->
<!--            android:src="@drawable/launcher_top"/>-->
<!--    </item>-->

    <!-- LOGO文案图 -->
    <item android:bottom="40dp">
        <bitmap
            android:gravity="bottom|clip_vertical"
            android:src="@drawable/launcher_bottom"/>
    </item>
</layer-list>

步骤四:恢复默认主题

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setTheme(R.style.AppTheme);//恢复默认主题样式
    setContentView(R.layout.activity_main);
}

结语

效果图就不放了,这种实现方式是市面比较流行的做法,底部LOGO+全白的背景颜色,一般LOGO上面可以添加广告。冷启动白屏优化就是这么简单。如果你们有更好的秒开启动方案,可以留言。共同学习进步!

如果本文对你有帮助,帮忙点赞或者留言,你的鼓励是我分享的动力。