安卓开发笔记(二十六):Splash实现首页快速开屏功能

我们在进行安卓开发的时候,首页开有两种方式,一种是利用handler将一个活动进行延时,时间到达之后软件则会跳转到第二个活动当中。而另一种方法则是更加常用的方法,利用splash实现首页的快速开屏,这种开屏方式比handler的方式传入图片的速度更快,出现白屏的时间更少,也是谷歌在2018开发者大会当中所推荐的方式。因此我们来看看这是怎么实现的。

一.MainActivity.java

这个程序是我们第一个开屏界面所需要的程序

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.WindowManager;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);//隐藏状态栏
        getSupportActionBar().hide();//隐藏标题栏
        setContentView(R.layout.activity_main);
        Thread myThread=new Thread(){//创建子线程
            @Override
            public void run() {
                try{
                    sleep(5000);//使程序休眠五秒
                    Intent it=new Intent(getApplicationContext(),PrimaryColor.class);//启动MainActivity,之后将活动跳转到PrimaryColor.java
                    startActivity(it);
                    finish();//关闭当前活动
                }catch (Exception e){
                    e.printStackTrace();
                }
            }
        };
        myThread.start();//启动线程
    }


    }

二.同时查看AndroidMenifest.java文件为:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.lenovo.deeplove">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".PrimaryColor"></activity>
    </application>

</manifest>

这样就实现了我们的splash快速开屏,其运行效果如下,比用handler确实快多了,我们可以清楚地看到,鼠标一点击这个软件,立马图片图片就会弹跳出来,而不会有任何的加载白屏现象发生:

 

posted @ 2019-04-22 21:56  Geeksongs  阅读(648)  评论(0编辑  收藏  举报

Coded by Geeksongs on Linux

All rights reserved, no one is allowed to pirate or use the document for other purposes.