2020久久超碰欧美精品最新亚洲欧美日韩久久精品,国产福利电影一区二区三区,亚洲欧美日韩一区在线观看,亚洲国产欧美日韩欧美特级,亚洲欧美日韩成人一区久久,欧美日韩精品一区二区三区不卡,国产欧美日韩va另类影音先锋,亚洲欧美日韩久久精品,亚洲欧美日韩国产成人精品影院,亚洲国产欧美日韩精品一区二区三区,欧美日韩国产成人高清视频,日韩久久精品国产免费观看频道,久久人人爽人人爽从片av高清,国产精品综合一区二区

首頁技術文章正文

如何實現應用程序歡迎界面的延遲跳轉功能?

更新時間:2022-04-19 來源:黑馬程序員 瀏覽量:

啟動應用程序的歡迎界面后,通常需要將頁面暫停3秒鐘后再跳轉到主界面(MainActivity所對應的界面,此界面目前為空白),要實現這個功能,我們需要在SplashActivity的init()方法中使用Timer類與TimerTask類,使歡迎界面等待3秒后,再跳轉到主界面,具體代碼如文件3-3所示。

【文件3-3】SplashActivity.java

......
publicclassSplashActivityextendsAppCompatActivity { 
    ......
    privatevoidinit() { 
        ......
        //創建Timer類的對象
        Timertimer = newTimer();
        //通過TimerTask類實現界面跳轉的功能
        TimerTasktask = newTimerTask() {
            @Override
            publicvoidrun() {
                Intentintent = newIntent(SplashActivity.this, MainActivity.class);
                startActivity(intent);
                SplashActivity.this.finish();
            }
        };
        timer.schedule(task, 3000); //設置程序延遲3秒之后自動執行任務task
    }
}

上述代碼中,第7~17行代碼主要用于實現讓程序在歡迎界面停留3秒后再跳轉到主界面的功能,其中第9~16行代碼主要實現了TimerTask類中的run()方法,在該方法中通過Intent類與startActivity()方法實現歡迎界面跳轉到主界面的功能。

第17行代碼調用Timer類對象的schedule()方法實現程序延遲3秒后執行界面跳轉任務的功能,其中schedule()方法中傳遞了2個參數,第1個參數task表示一個任務,它在此處代表的是歡迎界面跳轉到主界面的任務,第2個參數3000表示程序延遲執行任務的時間為3秒。

需要注意的是,在7~17行代碼中主要用到2個類,分別是Timer類與TimerTask類,其中Timer類是JDK(JavaSEDevelopmentKit是Java開發工具包)中提供的一個定時器工具,使用時會在主線程之外開啟一個單獨的線程執行指定任務,任務可以執行一次或多次。TimerTask類是一個實現了Runnable接口的抽象類,它代表一個可以被Timer類執行的任務。




分享到:
在線咨詢 我要報名
和我們在線交談!