美文网首页
Android 设置秒开全屏启动屏

Android 设置秒开全屏启动屏

作者: hjm1fb | 来源:发表于2017-09-16 17:09 被阅读398次

    如果启动页不需要更换图片:

    1. 添加主题
    <style name="Theme.SplashTheme" parent="Theme.AppCompat.Light.NoActionBar">
            <item name="android:windowBackground">@drawable/splash</item>
            <item name="android:windowFullscreen">true</item>
            <item name="android:fitsSystemWindows">true</item>
            <item name="android:windowNoTitle">true</item>
            <item name="android:clipToPadding">true</item>
            <item name="android:windowDrawsSystemBarBackgrounds">true</item>
            <item name="android:windowTranslucentNavigation">true</item>
            <item name="android:navigationBarColor">@android:color/transparent</item>
        </style>
    
    1. 使用主题
    <activity
                android:name=".splash.SplashActivity"
                android:configChanges="orientation|keyboardHidden|screenSize"
                android:theme="@style/Theme.SplashTheme">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN"/>
                    <category android:name="android.intent.category.LAUNCHER"/>
                </intent-filter>
            </activity>
    
    1. SplashActivity设置透明背景

    如果启动页需要更换图片:

    1. 添加主题
        <style name="Theme.SplashActivity" parent="Theme.AppCompat.NoActionBar.FullScreen">
            <item name="android:windowBackground">@color/white</item>
        </style>
    
        <style name="Theme.AppCompat.NoActionBar.FullScreen" parent="@style/Theme.AppCompat.NoActionBar">
            <item name="windowNoTitle">true</item>
            <item name="windowActionBar">false</item>
            <item name="android:windowFullscreen">true</item>
            <item name="android:windowContentOverlay">@null</item>
        </style>
    
    1. 使用主题
    <activity
                android:name=".splash.SplashActivity"
                android:configChanges="orientation|keyboardHidden|screenSize"
                android:theme="@style/Theme.SplashActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN"/>
                    <category android:name="android.intent.category.LAUNCHER"/>
                </intent-filter>
            </activity>
    

    这样的效果是第一屏为白屏。如果将
    android:windowBackground
    设置为一张启动图,白屏就替换为启动图了。然后在xml中将SplashActivity的background设置为color/transparent 就能一直显示启动图了。之后再加载新的图片也完全OK, 布局参数设置为match parent即可,或者将新图设置为SplashActivity的background。

    相关文章

      网友评论

          本文标题:Android 设置秒开全屏启动屏

          本文链接:https://www.haomeiwen.com/subject/ztcusxtx.html