更新时间: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类执行的任务。
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19